hi,

here's what I did to install slide 2.0 with versioning. It's basically
written from my memory so I may have missed some points. Since
there seem to be some incompatibilities with the embedded tomcat
I created a webapp and dropped it into tomcat 4.1.3.

- get "tomcat 4.1.3 beta" from
    http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.3-beta/
- get current slide from cvs
- get necessary jars, gump may be helpful
    http://gump.covalent.net/jars/latest/
- adjust build.properties for my needs
[ - set compiler to modern in build.xml ]
[ - set classpath to include antlr.jar and antlr-tools.jar ]
- build slide by "ant full-dist"
    (everything should work fine)

- now copy the following jars from the newly build slide into the
  common/lib directory of tomcat 4.1.3:
      slide-stores.jar
      slide-roles.jar
      slide-kernel.jar
      slide-webdavservlet.jar

- You also need the following jars there:
    commons-dbcp.jar
    commons-pool.jar
    jaxp.jar
    jdom-dev.jar
    jta.jar
    hsqldb.jar

- copy the following jars from newly build slide into the
  /server/lib directory of tomcat 4.1.3:
     slide-catalinawrapper.jar
     slide-jmxwrapper.jar
     slide-jndiwrapper.jar

- copy slide.war into the /webapps folder of tomcat 4.1.3

- still haven't gotten sliderealm to authenticate users so
    I added root to conf/tomcat-users.xml

- start tomcat, stop tomcat to extract the war files
- copy the Domain.xml appended to this mail into
    /webapps/slide
- ensure that /webapps/slide/WEB-INF/web.xml has
      <param-name>domain</param-name>
      <param-value>/Domain.xml</param-value>
   as init-param of the webdav servlet.
- start tomcat
- connect to slide (something like http://localhost:8080/slide/files),
     enter root/root at login,
- upload a file
- change that file and upload it again (repeat)
- go to /history/1 in slide. There should be a document for each
    revision you uploaded.


Good Luck :-)

    Thomas

--
Thomas Sch�ppel, bit~side GmbH   Fon:   +49+30+394054-28
Salzufer 14a, 10587 Berlin     Fax:   +49+30+394054-50
http://www.bit-side.com        Email: [EMAIL PROTECTED]






<?xml version="1.0"?>
<slide logger="org.apache.slide.util.logger.SimpleLogger" logger-level="6" default="slide">
    <namespace name="slide">
    <definition>
      <store name="jdbc">
        <nodestore classname="slidestore.reference.JDBCDescriptorsStore">
         <parameter name="driver">org.hsqldb.jdbcDriver</parameter>
         <parameter name="url">jdbc:hsqldb:slidestructure</parameter>
         <parameter name="user">sa</parameter>
         <parameter name="password"></parameter>
        </nodestore>
        <securitystore>
          <reference store="nodestore" />
        </securitystore>
        <lockstore>
          <reference store="nodestore" />
        </lockstore>
        <revisiondescriptorsstore>
          <reference store="nodestore" />
        </revisiondescriptorsstore>
        <revisiondescriptorstore>
          <reference store="nodestore" />
        </revisiondescriptorstore>
        <contentstore classname="slidestore.reference.JDBCContentStore">
         <parameter name="driver">org.hsqldb.jdbcDriver</parameter>
         <parameter name="url">jdbc:hsqldb:slidecontent</parameter>
         <parameter name="user">sa</parameter>
         <parameter name="password"></parameter>
        </contentstore>
      </store>
      <scope match="/" store="jdbc" />
    </definition>
        <configuration>
            <!-- Actions mapping -->
            <default-action>/actions</default-action>
            <read-object>/actions/read</read-object>
            <create-object>/actions/write</create-object>
            <remove-object>/actions/write</remove-object>
            <grant-permission>/actions/manage</grant-permission>
            <revoke-permission>/actions/manage</revoke-permission>
            <read-permissions>/actions/manage</read-permissions>
            <lock-object>/actions/write</lock-object>
            <kill-lock>/actions/manage</kill-lock>
            <read-locks>/actions/read</read-locks>
            <read-revision-metadata>/actions/read</read-revision-metadata>
            <create-revision-metadata>/actions/write</create-revision-metadata>
            <modify-revision-metadata>/actions/write</modify-revision-metadata>
            <remove-revision-metadata>/actions/write</remove-revision-metadata>
            <read-revision-content>/actions/read</read-revision-content>
            <create-revision-content>/actions/write</create-revision-content>
            <modify-revision-content>/actions/write</modify-revision-content>
            <remove-revision-content>/actions/write</remove-revision-content>
            <!-- Paths configuration -->
            <userspath>/users</userspath>
            <guestpath>guest</guestpath>
            <filespath>/files</filespath>
            <parameter name="dav">true</parameter>
            <parameter name="standalone">true</parameter>
            <!-- Roles definition -->
            <role name="root">slideroles.basic.RootRole</role>
            <role name="user">slideroles.basic.UserRole</role>
            <role name="guest">slideroles.basic.GuestRole</role>
            <!-- Users management -->
            <auto-create-users>true</auto-create-users>
            <!-- Default properties mapping -->
            <default-property name="foo" namespace="nsfoo/" value="bar" role="user"/>
            <default-property name="password" namespace="slide/" value="" role="user"/>
        </configuration>
        <data>
            <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/">
                <!-- Subject can be:
                self  "~"
                all   "nobody"
                user  "/users/john"
                group "+/users/groupA"
                role  "root"
        -->
                <!-- Uncomment the following line to give all permissions to
             principals have the root role -->
                <permission action="/actions" subject="root"/>
                <permission action="/actions" subject="/users/root"/>
                <permission action="/actions/read" subject="/users" inheritable="false"/>
                <permission action="/actions/read" subject="nobody" inheritable="false"/>
                <!-- /users -->
                <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users">
                    <permission action="/actions" subject="~"/>
                    <permission action="/actions" subject="/users/guest" inheritable="true" negative="true"/>
                    <permission action="/actions/read" subject="/users" inheritable="false"/>
                    <!-- Permission group example -->
                    <objectnode classname="org.apache.slide.structure.GroupNode" uri="/users/groupA">
                        <objectnode classname="org.apache.slide.structure.LinkNode" uri="/users/groupA/john" linkedUri="/users/john"/>
                        <objectnode classname="org.apache.slide.structure.LinkNode" uri="/users/groupA/root" linkedUri="/users/root"/>
                        <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users/groupA/singleGroupMember"/>
                    </objectnode>
                    <!-- /users/root represents the administrator -->
                    <objectnode classname="slideroles.basic.RootRoleImpl" uri="/users/root">
                        <revision>
                            <property name="password">root</property>
                        </revision>
                    </objectnode>
                    <!-- /users/john represents an authenticated user -->
                    <objectnode classname="slideroles.basic.UserRoleImpl" uri="/users/john">
                        <revision>
                            <property name="password">john</property>
                        </revision>
                    </objectnode>
                    <!-- /users/guest represents an authenticated or unauthenticated
               guest user -->
                    <objectnode classname="slideroles.basic.GuestRoleImpl" uri="/users/guest">
                        <revision>
                            <property name="password"/>
                        </revision>
                    </objectnode>
                </objectnode>
                <objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions">
                    <objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/read"/>
                    <objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/write"/>
                    <objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/manage"/>
                </objectnode>
                <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/files">
                    <!-- ### Give read/write/manage permission to guest ###
               Uncomment the following line to give permission to do
               all actions on /files to guest (unauthenticated users) -->
                    <!-- <permission action="/actions" subject="/users/guest"/> -->
                    <permission action="/actions/manage" subject="/users/john"/>
                    <permission action="/actions/write" subject="+/users/groupA"/>
                    <permission action="/actions/read" subject="nobody"/>
                </objectnode>
                <!-- DeltaV: default history and workspace paths -->
                <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/history"/>
                <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/workspace"/>
                <objectnode classname="org.apache.slide.structure.SubjectNode" uri="/workingresource"/>
            </objectnode>
        </data>
    </namespace>
    <!--
    DeltaV global parameters
    ========================
    * historypath (mandatory=no, default="/history"):
    Specifies a Slide path which determines the location where this DeltaV server stores
    history data.

    * workspacepath (mandatory=no, default="/workspace"):
    Specifies a Slide path which determines the location where this DeltaV server allows
    workspaces to reside.

    * workingresourcepath (mandatory=no, default="/workingresource"):
    Specifies a Slide path which determines the location where this DeltaV server stores
    working resources.

    * auto-version (mandatory=no, default="checkout-checkin"):
    Controls the DeltaV auto-version behaviour.

    * auto-version-control (mandatory=no, default="false"):
    Indicates if a resource just created by a PUT should be set under version-control.

    * checkout-fork (mandatory=no, default="forbidden"):
    Controls the DeltaV check-out behaviour when a version is already checked-out or
    has a successor.

    * checkin-fork (mandatory=no, default="forbidden"):
    Controls the DeltaV check-out behaviour when a version has already a successor.

    * standardLivePropertiesClass (mandatory=no, default="org.apache.slide.webdav.util.resourcekind.AbstractResourceKind"):
    Determines the "agent" knowing about what the standard live properties are.
    It should be a loadable class containing the following static methods:
    - boolean isLiveProperty( String propName )
    - boolean isProtectedProperty( String propName )
    - boolean isComputedProperty( String propName )
    - Set getAllLiveProperties()
    - Set getAllProtectedProperties()
    - Set getAllComputedProperties()

    * uriRedirectorClass (mandatory=no, default="org.apache.slide.webdav.util.DeltavUriRedirector"):
    Determines the URI redirector class. The DeltaV URI redirector is in charge of the
    following redirections:
    - version URI to history URI, e.g. /history/2/1.4 to /history/2
    - latest revision number for history resource to 0.0
    - latest revision number for version resource to last URI token, e.g. /history/2/1.4 to 1.4
    It should be a loadable class containing the following static methods:
    - String redirectUri( String uri )
    - NodeRevisionNumber redirectLatestRevisionNumber( String uri )
    -->
    <parameter name="historypath">/history</parameter>
    <parameter name="workspacepath">/workspace</parameter>
    <parameter name="workingresourcepath">/workingresource</parameter>
    <parameter name="auto-version">checkout-checkin</parameter>
    <parameter name="auto-version-control">true</parameter>
    <parameter name="checkout-fork">forbidden</parameter>
    <parameter name="checkin-fork">forbidden</parameter>
</slide>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to