xupdate update fails but query using xpath succeeds?

Julie McCabe <[email protected]> Fri, 2 Sep 2005 16:45:58 +0100
Newsgroups gmane.text.xml.xindice.user
Message-ID <[email protected]>
Hello,

Im trying to execute a xupdate to change the value of an element in an 
document.

String updateXml = "<xupdate:modifications version=\"1.0\""
                        + " xmlns:xupdate=\"http://www.xmldb.org/xupdate\">"
                        + "<xupdate:update 
select=\"/domain/service[@key='PLAYOUT']/memberVariable[name='channel'] \">" 
+ "channel1"
            + "</xupdate:update>"
            + "</xupdate:modifications>";

            Collection collection = con.getCollection();
            XUpdateQueryService updateService = (XUpdateQueryService)
                collection.getService("XUpdateQueryService", "1.0");
            updateService.updateResource("PO-NI-01", updateXml);

The exception thrown is @ the server ...
1168620 [http-8080-Processor23] WARN  
org.apache.xindice.core.xupdate.XUpdateQueryResolver  - ignored exception
java.lang.NullPointerException
        at org.xmldb.xupdate.lexus.commands.UpdateCommand.execute(Unknown 
Source)
        at 
org.apache.xindice.core.xupdate.XUpdateImpl.execute(XUpdateImpl.java:116)
        at 
org.apache.xindice.core.xupdate.XUpdateQueryResolver$XUpdateQuery.execute(XUpdateQueryResolver.java:142)
        at 
org.apache.xindice.core.xupdate.XUpdateQueryResolver.query(XUpdateQueryResolver.java:84)
        at 
org.apache.xindice.core.query.QueryEngine.query(QueryEngine.java:122)
        at 
org.apache.xindice.core.Collection.queryDocument(Collection.java:1242)
        at org.apache.xindice.server.rpc.messages.Query.execute(Query.java:58)
        at 
org.apache.xindice.server.rpc.RPCMessageInterface.run(RPCMessageInterface.java:48)
        at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.xmlrpc.Invoker.execute(XmlRpcServer.java)
        at 
org.apache.xmlrpc.XmlRpcServer$Worker.executeInternal(XmlRpcServer.java)
        at org.apache.xmlrpc.XmlRpcServer$Worker.execute(XmlRpcServer.java)
        at org.apache.xmlrpc.XmlRpcServer.execute(XmlRpcServer.java)
        at org.apache.xmlrpc.XmlRpcServer.execute(XmlRpcServer.java)
        at 
org.apache.xindice.server.XindiceServlet.doPost(XindiceServlet.java:90)
....................

From the client it appears as if the update is successfull!  Ive tested the 
select part of the xupdate query and it returns a document segement as 
expected - I tested this with ....

Collection collection = con.getCollection();
            XPathQueryService queryService = (XPathQueryService) 
                collection.getService("XPathQueryService", "1.0");
            ResourceSet resourceSet = queryService.query(queryXml);


Any ideas on this matter are greatly appreciated, as it doesnt make sense to 
me :)

Configuration: xindice 1.1b4, tomcat 5.0.30, jdk 1.5, os RH 9.0.

Regards,
Julie.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.