I've been trying to deploy a serlvet which calls Xindice into Tomcat 4.0.1. I thought I'd be able to bundle all the required JARs into the web deployment and all would be fine.
My WAR file contains: META-INF/ META-INF/MANIFEST.MF WEB-INF/ WEB-INF/lib/ WEB-INF/lib/openorb-1.2.0.jar WEB-INF/lib/xalan-2.0.1.jar WEB-INF/lib/xerces-1.4.3.jar WEB-INF/lib/xindice.jar WEB-INF/lib/xml-apis-1.0.jar WEB-INF/lib/xmldb.jar ...along with all my classes and JSPs etc.
When I deploy this and try my servlets out I get:
org.xmldb.api.base.XMLDBException: A connection to the Database instance 'db' could not be created. Error: Cannot create resource URL. Please set the openorb.home property.
at org.apache.xindice.client.xmldb.DatabaseImpl.init(Unknown Source)
at org.apache.xindice.client.xmldb.DatabaseImpl.getCollection(Unknown Source)
at org.xmldb.api.DatabaseManager.getCollection(DatabaseManager.java:194)
at org.xmldb.api.DatabaseManager.getCollection(DatabaseManager.java:157)
at com.dallaway.books.servlets.XindiceSearchServlet.init(XindiceSearchServlet.java:91)
This exception is thrown from:
collection = DatabaseManager.getCollection(db); (line 91, above)To get this error to go away, I added openorb-1.2.0.jar to Tomcat's classpath. So...that works... but it's not a great way to deploy an app.
Better ways? Clues? Please?
Thanks Richard
