2017-10-06 1 views
1

J'ai une application maven java eelecture de fichier situé dans les ressources GlassFish Java

enter image description here

Chemin du fichier est

~/Work/appname/WebContent/resources/json/menu.json 

Après avoir déployé le fichier GlassFish situé ici:

~/Tools/glassfish4/glassfish/domains/domain1/applications/appname/resources/json/menu.json 

enter image description here Dans ce fichier stocke le menu au format json. Je dois effectuer des opérations de base crud (créer, lire, mettre à jour, supprimer) avec ce fichier.

J'ai essayé d'obtenir le fichier comme ceci:

InputStream inputStream = ModulMenuUtil.class.getClassLoader().getResourceAsStream("/menu.json"); 

je reçois un NullPointerException. Je ne sais pas comment obtenir le chemin de ce fichier. Aidez-moi, s'il vous plaît.

+0

I aussi t ry InputStream inputStream = ModulMenuUtil.class.getClassLoader(). getResourceAsStream ("json/menu.json"); Ne travaille pas aussi. –

Répondre

1

Assurez-vous que votre dossier json et le fichier sont placés sous src/main/resources.

les opérations suivantes:

this.getClass().getClassLoader().getResourceAsStream("json/menu.json"); 

ou (non recommandé)

Thread.currentThread().getContextClassLoader().getResourceAsStream("json/menu.json"); 

Si les deux méthodes ne fonctionnent pas, vous pouvez également essayer de mettre le fichier à la racine de votre dossier src.

Voir aussi:

+0

J'ai créé une classe Util avec des méthodes statiques. Et cette solution ne fonctionne pas pour les méthodes statiques. Que pouvez-vous faire avec des méthodes statiques? –

+0

La deuxième approche fonctionne également dans un contexte statique ... – unwichtich