Hi,

I have been using a daily build from Nov 13th and just upgraded to the
Feb 23rd daily build.. When using either memory or hsql stores for
either version, I cannot seem to get the versioning to show up using the
struts tag lib "slide:node" tag. All I see is a node that says versioned
== false, and the list of revisions returned from the taglib is empty..
Since this is happening, I cannot pull the content back for the latest
revision using the tags, nor the properties for the latest revision. So,
I am assuming:

1) That versioning isn't working.. I don't believe this is the case, as
I've turned it on in the Domain.xml and I am seeing files showing up
under the history directory.. I don't have a Delta/V client other than
the web interface I'm building and any metadata SkunkDAV is seeing...
Any good windows clients out there that support Delta/V I can use to try
and confirm this possible bug?
2) The tag is broken - can someone confirm this using the daily build
from Feb 23rd? It seems to pull most of the interesting information
exposed from the NodeBean, except for versions (even locks are showing
up)
3) the MS web folder I'm using to push my test files in is confusing
Slide.. I have also tried to create a new file under a folder originally
created by MS using SkunkDAV and no luck with versioning being turned on
for that file. 
4) Versioning doesn't work without security being turned on - I have it
turned off for now for quicker development

I am seeing the following properties via SkunkDAV:

host    localhost
port    8080
name    /slide/files/sites/www.calvaryaustin.org/xml/homepage/home.xml
creation date   2003-02-24T01:09:49Z
last modified date      Mon, 24 Feb 2003 01:09:49 GMT
content type    text/xml
content length  405
content language        en
display name    home.xml
resource type   
etag    397939377_48563_405
supported locks Lock [scope=exclusive, type=write], Lock [scope=shared,
type=write]
active locks    
links   

Should I be seeing some properties related to versioning at all?

My Domain.xml is the following (pretty much stock minus versioning is
on):

<?xml version="1.0"?>
<slide logger="org.apache.slide.util.logger.SimpleLogger"
logger-level="6" default="slide">
  <!--
       logger
       ~~~~~~
       org.apache.slide.util.logger.SimpleLogger
       default logger with 1 log level
       log4j.Log4jLogger
       logger with fine granularity
       see http://jakarta.apache.org/log4j/
       
       logger-level
       ~~~~~~~~~~~~
       0 EMERGENCY
       1 CRITICAL
       2 ERROR
       4 WARNING
       6 INFO
       7 DEBUG
       -->
  <namespace name="slide">
    <!-- ### Memory Configuration ###
         The following memory configuration uses the
MemoryDescriptorsStore for
         node, security, locks and revisions. For content the
FileContentStore
         is used. Content is reset before start.
         -->
    <definition>
      <store name="memory">
        <nodestore
classname="slidestore.reference.MemoryDescriptorsStore"/>
        <securitystore>
          <reference store="nodestore"/>
        </securitystore>
        <lockstore>
          <reference store="nodestore"/>
        </lockstore>
        <revisiondescriptorsstore>
          <reference store="nodestore"/>
        </revisiondescriptorsstore>
        <revisiondescriptorstore>
          <reference store="nodestore"/>
        </revisiondescriptorstore>
        <contentstore classname="slidestore.reference.FileContentStore">
          <parameter name="rootpath">contentstore</parameter>
          <parameter name="version">true</parameter>
          <parameter name="resetBeforeStarting">true</parameter>
        </contentstore>
      </store>
      <scope match="/" store="memory"/>
    </definition>
    <!-- ### JDBC Configuration ###
         The following jdbc sample configuration uses the hsql Database
Engine
         a relational database engine written in Java, for more info:
         http://hsqldb.sourceforge.net/
         -->
    <!--
         <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>
                   -->
                   <!-- ### Mixed JDBC - Filesystem ###
                        stores:
slidestore.reference.JDBCDescriptorsStore
                        slidestore.reference.FileContentStore
                        !!! set resetBeforeStarting parameter for
FileContentStore to false !!!
                        -->
                   <!-- ### Cloudscape configuration (embedded database)
###
                        stores:
slidestore.cloudscape.CloudscapeDescriptorsStore
                        slidestore.cloudscape.CloudscapeContentStore
                        driver: COM.cloudscape.core.JDBCDriver
                        url:
jdbc:cloudscape:slidestructure;create=true
                        jdbc:cloudscape:slidecontent;create=true
                        -->
                   <!-- ### Oracle configuration (thin driver) ###
                        stores:
slidestore.reference.JDBCDescriptorsStore
                        slidestore.oracle.OracleContentStore
                        driver: oracle.jdbc.OracleDriver
                        url:    jdbc:oracle:thin:@localhost:1521:slide
                        -->
                   <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
namespace="http://jakarta.apache.org/slide/"; name="password" 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
namespace="http://jakarta.apache.org/slide/";
name="password">root</property>
                           </revision>
                         </objectnode>
                         <!-- /users/john represents an authenticated
user -->
                         <objectnode
classname="slideroles.basic.UserRoleImpl" uri="/users/john">
                           <revision>
                             <property
namespace="http://jakarta.apache.org/slide/";
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
namespace="http://jakarta.apache.org/slide/"; 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.
                           
                           * versioncontrol-exclude (mandatory=no,
default=""):
                           Specifies a Slide path which determines
resources which are excluded from version-control.
                           The default value "" makes no path being
excluded.
                           
                           * 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="versioncontrol-exclude"></parameter>
                      <parameter
name="checkout-fork">forbidden</parameter>
                      <parameter
name="checkin-fork">forbidden</parameter>
</slide>

Any thoughts?

Thanks,
James

Reply via email to