Bonjour,
je chercher à utiliser Xquery dans une appli java. J'utilise eXist et un de leurs exemples. Je veux ajouter un nouveau noeud à ma bdd xml. Voici le code
Code :
- String driver = "org.exist.xmldb.DatabaseImpl";
- Class cl = Class.forName(driver);
- Database database = (Database)cl.newInstance();
- DatabaseManager.registerDatabase(database);
- System.out.println("setting Class c" );
-
- Collection col = DatabaseManager.getCollection("xmldb:exist://localhost:8080/exist/xmlrpc/db/ImageBrowser" );
- if (col != null)
- {
- System.out.println("getting collection" );
- }
- try
- {
- XQueryService service = (XQueryService) col.getService("XQueryService","1.0" );
- System.out.println("setting properties" );
- service.setProperty("indent", "yes" );
-
- String xupdate = "update insert"+"<image path=\""+path+"\">"+
- contextrequest(context.context.toString()) +
- peoplerequest(people.people.toString()) +
- placerequest(place.place) +
- colorrequest(color.color) +
- propertiesrequest(properties.author,properties.date,properties.quality)+
- "</image>"+
- "into input()/Images";
-
- System.out.println("getting service" );
- ResourceSet result = service.query(xupdate);
- ResourceIterator i = result.getIterator();
- while(i.hasMoreResources()) {
- Resource r = i.nextResource();
- System.out.println((String)r.getContent());
- }
- }
- catch (Exception e)
- {
- System.out.println(e.fillInStackTrace());
- }
|
J'obtiens une exception à la ligne suivant: XQueryService service = (XQueryService) col.getService("XQueryService","1.0" );
Exception -> java.lang.ClassCastException: org.exist.xmldb.RemoteXPathQueryService
Quelqu'un pourrait il m'aider à comprendre ce qui ne marche pas?
Merci arnaud