bonjour,
j'ai une classe JAVA qui me permet d'exécuter des Targets d'un fichier XML.elle doit me filer la resultat du test.voila la classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 package com.cylande.test.cactus; import java.io.File; import org.apache.tools.ant.DefaultLogger; import org.apache.tools.ant.Project; import org.apache.tools.ant.ProjectHelper; import org.apache.tools.ant.taskdefs.SQLExec; public class ExcuteQuery { public void execSQLScript(String targetName) { File buildFile = new File("build.xml"); Project p = new Project(); DefaultLogger consoleLogger = new DefaultLogger(); consoleLogger.setErrorPrintStream(System.err); consoleLogger.setOutputPrintStream(System.out); consoleLogger.setMessageOutputLevel(Project.MSG_INFO); p.addBuildListener(consoleLogger); p.setUserProperty("ant.file", buildFile.getAbsolutePath()); p.init(); ProjectHelper helper = ProjectHelper.getProjectHelper(); p.addReference("ant.projectHelper", helper); helper.parse(p, buildFile); p.executeTarget(targetName); } public static void main(String args[]){ System.out.println("**********hello******/n"); ExcuteQuery pp=new ExcuteQuery(); try { pp.execSQLScript("creation"); System.out.print("pas crash"); } catch (Exception e) { e.toString(); System.out.print(e.toString()); System.out.print("crash"); } try { pp.execSQLScript("alimentation"); } catch (Exception e) { e.toString(); System.out.print(e.toString()); } } }
et voila le fichier build.XML qu'elle dois executer:
quand je lance ma classe.elle ouvre le fichier execute le target "creation et se bloque dans l'exécution du fichier CyrusIC_Oracle.sql.sql.elle n'affiche ni exception ni resultat de reussite.voila se qu'elle affiche:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 <?xml version="1.0" encoding="UTF-8"?> <project name="monProjet" default="creation" basedir="."> <property file="cactus.properties" /> <property name="ScriptCreation" value="${Creation.location}"/> <property name="ScriptAlimentation" value="${Alimentation.location}"/> <target name="creation"> <echo message="${ScriptCreation}" /> <sql driver="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@sek:1521:dbiclivraison" userid="careccev" password="cyrus" src="${ScriptCreation}/CyrusIC_Oracle.sql" autocommit="true" /> </target> <target name="alimentation"> <sql driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@sek:1521:dbiclivraison" userid="careccev" password="cyrus" src="${ScriptAlimentation}" /> </target> </project>
normalement ces ligne (que j'ai copier betement) me permet d'affichier la resultat sur la console:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 **********hello******/n creation: [echo] C:/WSLocal/CMD_IC/main [sql] Executing resource: C:\WSLocal\CMD_IC\main\CyrusIC_Oracle.sql
note que l'excution du fichier script.xml comme ant reussit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 DefaultLogger consoleLogger = new DefaultLogger(); consoleLogger.setErrorPrintStream(System.err); consoleLogger.setOutputPrintStream(System.out); consoleLogger.setMessageOutputLevel(Project.MSG_INFO); p.addBuildListener(consoleLogger);
je serai reconnaisant si qq m'aider a afficher les exeption ou bien la reussite de l'operation
Partager