I am moving from xmldb beta 4 to the current cvs Xindice 1.0rc1 and am having some problems with the creation of collections that I did not see previously. I am wondering whether something I am not aware of has changed or if there is now a bug in the system.
I am creating the new collections thus:
private boolean createCollection(String name, String path) {When I try to add a new an exception if thrown:
System.err.println("createCollection " + name + " " + path);
Collection col = myServer.getCollection(path);if (col == null) return false;
try {
CollectionManager service = (CollectionManager) col.getService("CollectionManager", "1.0");// Build up the Collection XML configuration.
String collectionConfig =
"<collection compressed=\"true\" name=\""
+ name
+ "\">"
+ " <filer class=\"org.dbxml.core.filer.BTreeFiler\" gzip=\"true\"/>"
+ "</collection>";service.createCollection(name, DOMParser.toDocument(collectionConfig));
service.createIndexer(name);System.err.println("Collection " + name + " created.");
}
catch (XMLDBException e) {
System.err.println("XML:DB Exception occured " + e.errorCode);
return false;
}
catch (XindiceException e) {
System.err.println("XML:DB Exception occured " + e.getMessage());
return false;
}
}
finally {
myServer.closeCollection(col);
}return true;
}
XML:DB Exception occured 1I am using the following code to add the document:
org.xmldb.api.base.XMLDBException: Collection No IndexManager
at org.apache.xindice.core.FaultCodes.createXMLDBException(Unknown Source)
at org.apache.xindice.client.xmldb.CollectionImpl.storeResource(Unknown Source)
at com.xindice.proto.internal.core.internuncio.Mediator.addDocument(Mediator.java:134)
at com.xindice.proto.internal.core.internuncio.Mediator.addDocument(Mediator.java:98)
at com.xindice.proto.internal.core.internuncio.Mediator.main(Mediator.java:301)
public boolean addDocument(DocumentDescriptor descriptor, boolean overwrite) {Collection col = myServer.getCollection(descriptor.getCollectionPath());
if (col == null) {
String error =
"Collection \""
+ descriptor.getCollectionPath()
+ "\" not found, document \""
+ descriptor.getName()
+ "\" skipped";System.out.println(error);
descriptor.setError(error);
return false;
}try {
if (!overwrite) {
// This code also throws an exception, but I believe
// that it should simply return null
try {
Resource res = col.getResource(descriptor.getName());
if (res == null) {
System.out.println("Document \"" + descriptor.getName() + "\" skipped");
return true;
}
}
catch (XMLDBException ignore) {
}
}XMLResource document = (XMLResource) col.createResource(descriptor.getName(), "XMLResource");
document.setContent(descriptor.getDocument());
// throws exception here
col.storeResource(document);
System.out.println("Document " + descriptor.getName() + " inserted");
}
catch (XMLDBException e) {
System.err.println("XML:DB Exception occured " + e.errorCode);
e.printStackTrace();
descriptor.setError("XML:DB Exception occured " + e.errorCode);
return false;
}
finally {
myServer.closeCollection(col);
}
return true;
}
Any insights would be very appreciated.
Tia,
Joel
begin:vcard n:Rosi-Schwartz;Joel tel;fax:+44 1435 831011 tel;home:+44 1435 831010 tel;work:+44 1435 831010 x-mozilla-html:TRUE org:Techne Research Limited version:2.1 email;internet:[EMAIL PROTECTED] title:Architect adr;quoted-printable:;;Downgate Farmhouse=0D=0AFurnace Lane;Warbleton near Heathfield;East Sussex;TN21 9AZ;United Kingdom fn:Joel Rosi-Schwartz end:vcard
