|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Annie Développeur informatique Inscription : août 2011 Messages : 19 ![]() |
Est-ce qu'il est possible dans Java d'appeler une "stored procedure" sur AS400 sans préfix ?
Exemple: "call QGPL.StoreProcName()" Est-il possible de faire "call StoreProcName()" en Java et le système exécutera la première trouvée dans le librairie list ? Même chose pour les requêtes SQL, j'aimerais ne pas avoir à mentionner la librairie du fichier dans un select. Exemple: Select field1, field2 from LIBRAIRIE.FILENAME; J'aimerais mieux Select field1, field2 from FILENAME; Et selon le librairie list de la connection, le programme prendrait le premier fichier trouvé. C'est que nous avons 3 environnements, ce qui les séparent c'est un librairie list différent avec les mêmes nom de fichier. Exemple: Mon fichier produit ICITEMP se retrouve dans 3 librairies différentes. Sur AS400 nous changeons le librairie list quand l'utilisateur choisi le menu et les programmes RPGLEs se pointent sur le bon fichier. Merci Annie |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 641 ![]() |
ton code java se trouve où ? une appli qui tourne sur un serveur d'application ?
Si oui, c'est possible, faut juste bien renseigner ta datasource. |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Annie Développeur informatique Inscription : août 2011 Messages : 19 ![]() |
Le code java est sur le AS400. Nous utilisons WAS comme server.
Je me trouve à développer du côté AS400 et créer les stored procedures. Je ne connais pas Java et les développeurs Java ne connaissent pas le AS400, alors ce n'est pas évident de se comprendre. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
Pour pouvoir faire un CALL sans qualifier le schéma, dans le dit PUNKOFF, dans ta datasource (au niveau de Websphere) utilises la convention *SYS au lieu de *SQL.
Pour pouvoir faire des SELECT sans qualifier les tables, quand tu créés tes procédures, fonctions, triggers etc... tu te mets aussi sous convention *SYS. Il te faudra donc recréer tes procédures. Sous quelle interface créés-tu les procédures ? (écran vert, navigator, Squirrel, autres.... ) |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Annie Développeur informatique Inscription : août 2011 Messages : 19 ![]() |
Les "stored procedures" sont créées avec l'utilitaire SQL sur le iseries (écran vert). Elles sont liées à des programmes SQLRPGLE. Je n'ai aucun problème à les exécuter avec ISeries Navigator car je les utilise sous convention *SYS.
La majorité des commandes SQL seront à l'intérieur des programmes SQLRPGLE et dans certain cas ce pourrait être des scripts SQL. Il n'y a pas de problème à ce niveau, je n'ai pas à préciser le schéma. C'est dans les programmes Java que l'on doit préciser. Même chose pour l'appel des "stored procedures", nous devons préciser le schéma pour Java seulement. Les programmes Java sont développés sous éclipse sur PC mais exécuter sur ISeries avec WAS et JVM sur ISeries. Si je comprend bien c'est une configuration sur WebSphere et non un paramètre de connection ou une configuration au niveau des programmes Java. Merci de votre aide. Annie |
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Annie Développeur informatique Inscription : août 2011 Messages : 19 ![]() |
J'ai essayé de modifier mon datasource JDBC sur mon serveur sur le ISeries, dans la section "libraries" j'ai ajouté mon librairie list et dans la section "naming" j'ai inscrit system.
Dans le programme java, les noms de storeproc sont appelés sans schéma et le système ne les trouves pas. Est-ce qu'il y a un autre paramètre à changer ? Merci Annie |
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
|
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Annie Développeur informatique Inscription : août 2011 Messages : 19 ![]() |
Voilà comment j'ai réglé mon problème.
J'ai modifié mon datasource JDBC sur mon serveur sur le ISeries, dans la section "libraries" j'ai laissé à blanc et dans la section "naming" j'ai inscrit system. Même configuration sur WAS sur le PC des développeurs. Maintenant, le système recherche dans le "library list" du UserID du pool de connection, la "stored procedure" et les tables. Merveilleux !!! ![]() Annie |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com