Je l'environnement mis en place suivant:Comment puis-je rechercher une source de données JNDI à l'extérieur d'un conteneur Web?
- Java 1.5
- Sun Application Server 8.2
- Oracle XE 10
- Struts 2
- Mise en veille prolongée
Je suis intéressé savoir comment je peux écrire du code pour un client Java (c'est-à-dire en dehors d'une application web) qui peut référencer la source de données JNDI p fourni par le serveur d'application.
Les ports de Sun Application Server ont tous leurs valeurs par défaut. Il y a une source de données JNDI nommée jdbc/xxxx dans la configuration du serveur, mais j'ai remarqué que la configuration Hibernate pour l'application web utilise plutôt le nom java: comp/env/jdbc/xxxx.
La plupart des exemples que je l'ai vu à ce jour concernent le code comme
Context ctx = new InitialContext();
ctx.lookup("jdbc/xxxx");
Mais il semble que je suis soit en utilisant le mauvais nom JNDI, ou je dois configurer un jndi.properties ou tout autre fichier de configuration pour pointer correctement vers un auditeur? J'ai appserv-rt.jar de Sun Application Server qui a jndi.properties à l'intérieur, mais cela ne semble pas aider.
Il y a une question similaire ici, mais il ne donne pas de code/fait référence à avoir iBatis obtenir le Datasource JNDI automatiquement: Accessing Datasource from Outside A Web Container (through JNDI)
L'article de blog était extrêmement utile. Merci! –