You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xindice-users@xml.apache.org by "_| |_| |_ ][ /-\\ |\\|" <ce...@yahoo.com> on 2003/04/16 23:53:41 UTC

NEED HELP URGENT!!

HI,

My project with xindice is about to flatline if I
cannot get past this hurdle, so any help would be
appreciated.  

I am using Xindice1.1b and have a GUI that allows
users to move documents betweens collections.  If they
want, they can make new collections.  The only problem
is that when the new collection is made in the GUI, it
appears in the GUI list of collections, but the
Xindice command line tool does not show it.  So when I
restart Tomcat, the collection is no longer in the GUI
or the command line.  Also, when I create the
collection via the command line tool, it is not in the
GUI as a collection until I restart Tomcat.  Finally,
if I recreate the deleted collection, the original
documents are there rather than having been deleted
with the collection.  

I am using jdk1.4.1, red hat 8, xindice 1.1b (CVS
build from 4/11), tomcat 4.1.12LE and cocoon 2.1. 
Cocoon is using the xindice-embed pseudo protocol to
access xindice which I configured in cocoon.xconf:

<cocoonxconf:snippet>
    <!-- xmldb pseudo protocol -->
    <component-instance
class="org.apache.cocoon.components.source.impl.SourceFactoryWrapper"
name="xmldb">
        <source-factory
class="org.apache.cocoon.components.source.XMLDBSourceFactory">
            <!-- Xindice driver -->
            <driver
class="org.apache.xindice.client.xmldb.DatabaseImpl"
type="xindice-embed"/>
            <!-- Add here other XML:DB compliant
databases drivers -->
        </source-factory>
    </component-instance>
</cocoonxconf:snippet>
<sitemap:snippet>
   <map:generate src="xmldb:xindice-embed:///db/...
</sitemap:snippet>
 and I have a xmldb helper class to create
collections.    This also uses xmldb:xindice-embeded
as the root when trying to get the appropriate
collection service. I am confident that there is only
one xindice on my computer and one db location. This
is how I create the collection:
<snippet>
         String collectionName = "test";//norm dynamic
         String name = "subtest";//norm dynamic
         Collection col = null;
         col =
DatabaseManager.getCollection("xmldb:xindice-embed/" +
collectionName + "/");
         
         CollectionManager service =
            (CollectionManager)
col.getService("CollectionManager", "1.0");

             service = (CollectionManager)
col.getService("CollectionManager", "1.0");

Document doc = new DocumentImpl();

           Element colEle =
doc.createElement("collection");
           colEle.setAttribute("compressed", "true");
           colEle.setAttribute("name", name);
           doc.appendChild(colEle);

           Element filEle =
doc.createElement("filer");
           filEle.setAttribute("class",
"org.apache.xindice.core.filer.BTreeFiler");
           colEle.appendChild(filEle);           

           service.createCollection(name, doc);
</snippet>

Lastly, when I do a grep -Rl {newCollectionName}
{dbLocation} the collection is found at
/xindice/db/system/SysSymbols/SysSymbols.tbl and there
are folders and *.tbl files under the db root path.

I have seen others with this problem in the list, but
unfortunately it does not seem to have been solved.  I
have also tried running xindice as a servlet in tomcat
and without starting it all.  I am hoping I have
provided enough info here.

Thanks All,
Julian

=====
Live simply so others may simply live.
�
-Ghandi
�
Pluralitas non est ponenda sine neccesitate.
"Entities should not be multiplied unneccesarily"
�
-William of Occam

__________________________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo
http://search.yahoo.com