/ / Exception de pointeur nul lors de l'utilisation de JNDI pour JDBC - java, jdbc, glassfish, jndi, glassfish-4

Exception de pointeur nulle lors d'une tentative d'utilisation de JNDI pour JDBC - java, jdbc, glassfish, jndi, glassfish-4

Dans Glassfish admin, j'ai configuré un pool de connexions JDBC sur lequel je peux effectuer un ping correct. Également dans l’administration de Glassfish, j’ai configuré une ressource JDDI JNDI appelée jdbc / myDb.

Cependant, je ne parviens pas à me connecter depuis Java. J'ai essayé les deux styles d'injection:

@Resource (mappedName="jdbc/myDB")
private DataSource datasource;

J'ai aussi essayé le style de contexte:

Context ctx = new InitialContext();
DataSource datasource = (DataSource)ctx.lookup("jdbc/myDB")

Tout ce que je reçois, c'est java.lang.NullPointerException.

J'ai également essayé différents styles de nommage tels que java: jdbc / myDB ou java: comp / env / jdbc / myDb

Ceci utilise la dernière version de Glassfish (4.1), le dernier pilote Postgres (9.3-1102 JDBC 41) contre Postgres 9.4 et le dernier Java (1.8.0_31-b13).

Réponses:

2 pour la réponse № 1

Allez dans le menu JDBC -> Ressources JDBC -> jdbc / __ default

Choisissez votre nom DBName dans le menu déroulant "Nom du pool:" et utilisez

@Resource (mappedName="jdbc/__default")

Attention aux deux "_"!

Au moins ça marche pour moi.

p.s .: Pouvez-vous préciser où le NPE est lancé?