Probleme avec un code d'une application sig avec l'api geotools
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011
-
15 mai 2010 à 01:13
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011
-
21 mai 2010 à 01:31
Bonjour, voila je dois réaliser une application sig avec geotools. Ainsi au cours de mes recherches, j'ai trouvé un code implémentant geotools et qui aboutit à la réalisation d'une mini-application sig. Toutefois, il y a des erreurs( notamment à propos du casting) dans ce code et je les ai corrigé. Noter que je travaille sur éclipse et j'ai télécharger les librairies geotools nécessaires : d'ailleurs aucune erreurs de package ne s'affiche.
Seulement voila que cela ne marche pas quand je l'exécute alors que dans le programme il y a pas une seule erreurs signalée. Donc aidez moi svp !
voici le code :
//***************************** D E B U T *******************************
public static void main(String[] args) {
new Chap2Donnees();
}
}
//******************************* F I N **********************************
Et voici l'erreur à l'exécution :
//******************************* D E B U T ******************************
15 mai 2010 00:03:58 org.geotools.factory.FactoryRegistry scanForPlugins
ATTENTION: Échec lors de l'initialisation d'un service de catégorie "MathTransformProvider". La cause est "NoClassDefFoundError: javax/media/jai/WarpAffine".
Exception in thread "main" java.lang.NoSuchFieldError: LONG_OF_CENTRE
at org.geotools.referencing.operation.projection.ObliqueMercator$Provider_Hotine.<clinit>(ObliqueMercator.java:726)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at sun.misc.Service$LazyIterator.next(Unknown Source)
at org.geotools.factory.FactoryRegistry.register(FactoryRegistry.java:829)
at org.geotools.factory.FactoryRegistry.scanForPlugins(FactoryRegistry.java:773)
at org.geotools.factory.FactoryRegistry.scanForPluginsIfNeeded(FactoryRegistry.java:808)
at org.geotools.factory.FactoryRegistry.getServiceProviders(FactoryRegistry.java:195)
at org.geotools.referencing.operation.DefaultMathTransformFactory.getProvider(DefaultMathTransformFactory.java:281)
at org.geotools.referencing.operation.DefaultMathTransformFactory.getDefaultParameters(DefaultMathTransformFactory.java:315)
at org.geotools.referencing.wkt.Parser.parseProjection(Parser.java:584)
at org.geotools.referencing.wkt.Parser.parseProjCS(Parser.java:888)
at org.geotools.referencing.wkt.Parser.parseCoordinateReferenceSystem(Parser.java:222)
at org.geotools.referencing.wkt.Parser.parseCoordinateReferenceSystem(Parser.java:201)
at org.geotools.referencing.factory.ReferencingObjectFactory.createFromWKT(ReferencingObjectFactory.java:1088)
at org.geotools.data.shapefile.prj.PrjFileReader.(PrjFileReader.java:78)
at org.geotools.data.shapefile.ShapefileDataStore.openPrjReader(ShapefileDataStore.java:504)
at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:658)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:610)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:604)
at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:959)
at application.java.Chap2Donnees.createLayer(Chap2Donnees.java:78)
at application.java.Chap2Donnees.(Chap2Donnees.java:56)
at application.java.Chap2Donnees.main(Chap2Donnees.java:278)
//******************************** F I N **********************************
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 15 mai 2010 à 07:33
Salut,
Un NoClassDefFound veut bien dire ce que ca veux dire : il ne trouve pas une classe. Il doit te manquer un jar dans le classpath de ton projet.
______________________________________
AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 15 mai 2010 à 19:13
salut
pourtant j'ai ajouter les librairies(tous les jar qui s'y trouvent) : geotools 2.5.5 et geotools 2.6.0 .
Donc quel jar manquant ca pourrait être ? svp aidez moi !
Merci d'avance !
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 16 mai 2010 à 13:02
salut,
vous pouvez m'indiquez ou télécharger et comment installer cette bibliothèque jai; car j'ai téléchargé le .exe et le .zip de cette jai puis je les ai, respectivement, installé et ajouter(dans eclipse) : mais ca marche toujours pas!
Merci !
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 16 mai 2010 à 13:04
Salut,
ajouter(dans eclipse)
Tu les as ajouté où ? Il faut que la bibliothèque soit ajoutée dans le classpath de ton application, sans cà, tu auras toujours cette erreur.
______________________________________
AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 16 mai 2010 à 13:55
voila, je les ai ajouter : j'ai ajouter d'abord le .zip dans le classpath ensuite j'ai installe le .jdk . Maintenant la nouvelle erreurs est :
//********************** D E B U T *******************************
java.lang.NullPointerException: Null URL for ShapefileDataSource
at org.geotools.data.shapefile.ShapefileDataStore.(ShapefileDataStore.java:135)
at application.sig.Chap1Contact.buildMap(Chap1Contact.java:99)
at application.sig.Chap1Contact.(Chap1Contact.java:61)
at application.sig.Chap1Contact.main(Chap1Contact.java:176)
//************************ F I N **********************************
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 16 mai 2010 à 14:39
Salut,
Tu n'as pas dû bien initialiser la classe ShapeFileDataStore lors de l'appel du constructeur (ligne 99 de ta classe Chap1Contact).
______________________________________
AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 16 mai 2010 à 15:41
voila le bout du code qui concerne l'erreur (je pense) :
//******************* D E B U T *******************************
...
URL shapeURL Chap1Contact.class.getResource("/ressource/occ_sol.shp"); ShapefileDataStore store new ShapefileDataStore(shapeURL);
String name store.getTypeNames()[0]; FeatureSource source store.getFeatureSource(name);
...
//************************** F I N ***********************************
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 16 mai 2010 à 15:57
Salut,
Regarde ce que te retourne Chap1Contact.class.getResource("/ressource/occ_sol.shp") mais apparemment il ne trouve pas le fichier (il doit te renvoyer une URL null).
______________________________________
AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 16 mai 2010 à 16:17
pourtant le fichier est bien présent dans le répertoire ressource lequel j'ai bel et bien placé dans mon package(en effet j'ai créer le répertoire ressource dans mon package et ensuite j'ai copié puis collé le fichier occ_sol.shp la dedans).
Alors que devrais je faire d'autre? est ce que la procedure n'est-elle pas correct? ou bien je dois placer le dossier quelque part sur le disque et indiquer le chemin? je sais vraiment plus !
N.B : j'ai importé plutôt la librairie geotools 2.3.2
zizona
Messages postés63Date d'inscriptionmercredi 4 novembre 2009StatutMembreDernière intervention22 décembre 2011 16 mai 2010 à 21:50
oui,c est ce que j'ai fais le probleme persiste : toujours l'erreur
java.lang.NullPointerException: Null URL for ShapefileDataSource
at org.geotools.data.shapefile.ShapefileDataStore.(ShapefileDataStore.java:135)
at application.sig.Chap1Contact.buildMap(Chap1Contact.java:99)
at application.sig.Chap1Contact.(Chap1Contact.java:61)
at application.sig.Chap1Contact.main(Chap1Contact.java:176)