org.apache.xindice.client.corba.db.APIException: IDL:org/apache/xindice/client/c
orba/db/APIException:1.0
at org.apache.xindice.client.corba.db.APIExceptionHelper.read(APIExcepti
onHelper.java:112)
at org.apache.xindice.client.corba.db._CollectionStub.queryCollection(_C
ollectionStub.java:833)
at org.apache.xindice.client.xmldb.services.XUpdateQueryServiceImpl.upda
teResult(XUpdateQueryServiceImpl.java:165)
at org.apache.xindice.client.xmldb.services.XUpdateQueryServiceImpl.upda
te(XUpdateQueryServiceImpl.java:185)
at TestUpdate.main(TestUpdate.java:26)
Exception in thread "main" org.xmldb.api.base.XMLDBException: Query Compilation
Error
at org.apache.xindice.core.FaultCodes.createXMLDBException(FaultCodes.ja
va:239)
at org.apache.xindice.client.xmldb.services.XUpdateQueryServiceImpl.upda
teResult(XUpdateQueryServiceImpl.java:170)
at org.apache.xindice.client.xmldb.services.XUpdateQueryServiceImpl.upda
te(XUpdateQueryServiceImpl.java:185)
at TestUpdate.main(TestUpdate.java:26)
I am actually using Cocoon and xindice, but wrote a little test program that exhibits the same problem. It is attached. I know that the collection and everything is setup fine as I can query it fine. I just can't seem to get by this xupdate problem.
Thanks,
Irv
import org.xmldb.api.base.*; import org.xmldb.api.modules.*; import org.xmldb.api.*;
public class TestUpdate {
public static void main( String args[] ) throws Exception {
Collection col = null;
Database database = (Database)(Class.forName(
"org.apache.xindice.client.xmldb.DatabaseImpl" ).newInstance());
DatabaseManager.registerDatabase( database );
col = DatabaseManager.getCollection(
"xmldb:xindice:///db/Auctions" );
System.out.println( "Got the collection" );
String xupdate =
"<xu:modifications version='1.0'
xmlns:xu='http://www.xmldb.org/xupdate'>" +
"<xu:update select='/Auction[1]'>" +
"<ID>001</ID>" +
"<User>Irv</User>" +
"<Bid>45</Bid>" +
"<Description>Test</Description>" +
"</xu:update>" +
"</xu:modifications>";
XUpdateQueryService service =
(XUpdateQueryService)(col.getService(
"XUpdateQueryService", "1.0" ));
service.update( xupdate );
}
}
