Date: 2004-11-03T13:20:50
Editor: BrianLee <[EMAIL PROTECTED]>
Wiki: Jakarta-Slide Wiki
Page: DefinitionNode
URL: http://wiki.apache.org/jakarta-slide/DefinitionNode
no comment
New Page:
=== Domain.xml Definition Node ===
>From my understanding, the definition section sets where all the data concerning
>different parts of Slide will be stored.
In the example all sub-stores (lock, content, etc...) are stored using
"org.apache.slide.store.txfile.TxXMLFileDescriptorsStore", which
essentially stores data in an XML formatted file.
{{{
<definition>
<store name="tx">
<parameter name="tlock-timeout">120</parameter>
<nodestore
classname="org.apache.slide.store.txfile.TxXMLFileDescriptorsStore">
<parameter name="rootpath">store/metadata</parameter>
<parameter name="workpath">work/metadata</parameter>
<parameter name="defer-saving">true</parameter>
<parameter name="timeout">120</parameter>
</nodestore>
<sequencestore
classname="org.apache.slide.store.txfile.FileSequenceStore">
<parameter name="rootpath">store/sequence</parameter>
</sequencestore>
<securitystore>
<reference store="nodestore"/>
</securitystore>
<lockstore>
<reference store="nodestore"/>
</lockstore>
<revisiondescriptorsstore>
<reference store="nodestore"/>
</revisiondescriptorsstore>
<revisiondescriptorstore>
<reference store="nodestore"/>
</revisiondescriptorstore>
<contentstore
classname="org.apache.slide.store.txfile.TxFileContentStore">
<parameter name="rootpath">store/content</parameter>
<parameter name="workpath">work/content</parameter>
<parameter name="defer-saving">true</parameter>
<parameter name="timeout">120</parameter>
</contentstore>
<!-- uncomment if you want to use the sample Indexer -->
<!-- be sure to have Lucene in your classpath -->
<!--
<contentindexer
classname="org.apache.slide.index.SampleTxtContainsIndexer">
<parameter name="indexpath">./index</parameter>
</contentindexer>
-->
</store>
<scope match="/" store="tx"/>
</definition>
}}}
==== Reference ====
{{{
<securitystore>
<reference store="nodestore"/>
</securitystore>
}}}
"The reference means that for the security store the same object is used as is, is
configured at the node store." To get a better understanding compare the default
nodestore definition (above) and the nodestore definition using JDBC. The default
nodestore stores all of its data in XML format text files while the nodestore below
stores the data in predefined tables.
==== Definition Using JDBC ====
Ofcourse, for ease of maintenance most people will probably want to use a database to
store most of the data related to Slide. In the example below,
most sub-stores (except content) are using the JDBC configured nodestore.
Note
If you want to try a JDBC nodestore you also have to create all the necessary tables
and views that Slide expects. You can use the scripts (configured for most major
database servers) found in jakarta-slide-2.1b2-tomcat-5.0.28/webapps/slide/db-schema/
(for 2.1b2).
{{{
<definition>
<store name="JDBCStore">
<nodestore classname="org.apache.slide.store.impl.rdbms.JDBCStore">
<parameter
name="adapter">org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter</parameter>
<parameter name="driver">org.postgresql.Driver</parameter>
<parameter
name="url">jdbc:postgresql://19.26.54.86:5432/db_name</parameter>
<parameter name="user">test</parameter>
<parameter name="password">12345</parameter>
<parameter name="dbcpPooling">true</parameter>
<parameter name="maxPooledConnections">10</parameter>
<parameter name="isolation">SERIALIZABLE</parameter>
<parameter name="compress">false</parameter>
</nodestore>
<contentstore
classname="org.apache.slide.store.txfile.TxFileContentStore">
<parameter name="rootpath">store/assets</parameter>
<parameter name="workpath">work/assets</parameter>
<parameter name="defer-saving">true</parameter>
<parameter name="timeout">120</parameter>
</contentstore>
<securitystore>
<reference store="nodestore" />
</securitystore>
<lockstore>
<reference store="nodestore" />
</lockstore>
<revisiondescriptorsstore>
<reference store="nodestore" />
</revisiondescriptorsstore>
<revisiondescriptorstore>
<reference store="nodestore" />
</revisiondescriptorstore>
</store>
<scope match="/" store="CansasStore"/>
</definition>
}}}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]