Salut a tous,
suite a un probleme d'optimisation pour importer de l'xml, je suis passé par java pour l'import (lecture du fichier et insertion dans la bdd)
ces fichiers java sont compilés et chargés dans la bdd grace a la fonction "loadjava" et ils apparaissent bien dans la bdd quand je regarde dans console management
je créé une fonction sql pour appeler la fonction principale java en faisant:
je vois aussi cette fonction dans le console management.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 create or replace function doparse(path in VARCHAR2, logPath in VARCHAR2) return VARCHAR2 as language java name 'xml.parser.sax.CadisSaxParser.doParse(java.lang.String, java.lang.String) return java.lang.String'; /
sous sqlplus, j'arrive a l'appeler grace a la commande:
:path et :logpath etant des variables initialisées avant, contenant le chemin du fichier xml a lire, et le chemin du fichier de log
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 variable retour varchar2(500); call doparse(:path, :logPath) into :retour;
Le probleme:
mon application qui doit lire le fichier xml, doit donc appeler cette fonction doparse, mais je ne sais pas comment faire
j'ai essayé tout simplement pareil avec
tout ca avec, sans les quotes, doubles quotes etc..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 call doparse(path, logPath); doparse(path, logPath); execute 'call doparse(path, logPath)'; host ('call doparse(path, logPath)'); etc...
mais ca ne compile quasiment jamais, et quand ca compile, ca plante
comment faut il faire pour appeler une fonction java stockée en memoire sous forms ?
j'ai recherché pas mal, mais j'ai rien trouvé
merci
mike
Partager