jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "simon smith (JIRA)" <j...@apache.org>
Subject [jira] Created: (JCR-2409) when versioning an nt:file node I get this exception (see below )everytime checkin() is called.
Date Wed, 25 Nov 2009 12:46:39 GMT
when versioning an nt:file node I get this exception (see below )everytime checkin() is called.

------------------------------------------------------------------------------------------------

                 Key: JCR-2409
                 URL: https://issues.apache.org/jira/browse/JCR-2409
             Project: Jackrabbit Content Repository
          Issue Type: Bug
          Components: versioning
    Affects Versions: 1.6.0
         Environment: windows xp , elcipse ganymede, java 1.6.0_05-b13, 
            Reporter: simon smith


WARNING: Exception while creating document for node: 695418c7-508f-4205-a919-6a216d71612e:
javax.jcr.RepositoryException: Missing child node entry for node with id: 695418c7-508f-4205-a919-6a216d71612e
the above is thrown everytime checkin is called. Can be replicated using the following test
snippet.

Node fileNode = bundleNode.addNode (fileName, "nt:file");
		        fileNode.addMixin("mix:versionable");
		        //create the mandatory child node - jcr:content
		        Node resNode = fileNode.addNode ("jcr:content", "nt:resource");
		         resNode.setProperty ("jcr:mimeType", mimetype);
		        resNode.setProperty ("jcr:data", new FileInputStream(file));		        
		        Calendar lastModified = Calendar.getInstance ();
		        lastModified.setTimeInMillis(file.lastModified ());
		        resNode.setProperty ("jcr:lastModified", lastModified);
		        session.save();
		        fileNode.checkin();
		               
		        //create another version 
		        fileNode.checkout();
		        fileNode.checkin();




//repository.xml as follows 
<?xml version="1.0"?>
<!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD Jackrabbit 1.6//EN"
                            "http://jackrabbit.apache.org/dtd/repository-1.6.dtd">
<!-- Example Repository Configuration File -->
<Repository>

    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
        <param name="path" value="${rep.home}/repository"/>
    </FileSystem>

    <!--
        security configuration
    -->
    <Security appName="Jackrabbit">
        <!--
            access manager:
            class: FQN of class implementing the AccessManager interface
        -->
        <AccessManager class="org.apache.jackrabbit.core.security.SimpleAccessManager">
            <!-- <param name="config" value="${rep.home}/access.xml"/> -->
        </AccessManager>

        <LoginModule class="org.apache.jackrabbit.core.security.SimpleLoginModule">
           <!-- anonymous user name ('anonymous' is the default value) -->
           <param name="anonymousId" value="anonymous"/>
           <!--
              default user name to be used instead of the anonymous user
              when no login credentials are provided (unset by default)
           -->
           <!-- <param name="defaultUserId" value="superuser"/> -->
        </LoginModule>
    </Security>

    <!--
        location of workspaces root directory and name of default workspace
    -->
    <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="default"/>
    <!--
        workspace configuration template:
        used to create the initial workspace if there's no workspace yet
    -->
    <Workspace name="${wsp.name}">
        <!--
            virtual file system of the workspace:
            class: FQN of class implementing the FileSystem interface
        -->
        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${wsp.home}"/>
        </FileSystem>
        <!--
            persistence manager of the workspace:
            class: FQN of class implementing the PersistenceManager interface
        -->
        <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
           <param name="driver" value="org.postgresql.Driver"/>
           <param name="url" value="jdbc:postgresql://localhost/digital"/>
           <param name="schema" value="postgresql"/>
           <param name="user" value="digital"/>
           <param name="password" value="d1gital"/>
           <param name="schemaObjectPrefix" value="repository_"/>
           <param name="externalBLOBs" value="true"/>
        </PersistenceManager>
        <!--
            Search index and the file system it uses.
            class: FQN of class implementing the QueryHandler interface
        -->
        <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
            <param name="path" value="${wsp.home}/index"/>
        </SearchIndex>
    </Workspace>

    <!--
        Configures the versioning
    -->
    <Versioning rootPath="${rep.home}/version">
        <!--
            Configures the filesystem to use for versioning for the respective
            persistence manager
        -->
        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${rep.home}/version" />
        </FileSystem>

        <!--
            Configures the persistence manager to be used for persisting version state.
            Please note that the current versioning implementation is based on
            a 'normal' persistence manager, but this could change in future
            implementations.
        -->
        <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
           <param name="driver" value="org.postgresql.Driver"/>
           <param name="url" value="jdbc:postgresql://localhost/digital"/>
           <param name="schema" value="postgresql"/>
           <param name="user" value="digital"/>
           <param name="password" value="d1gital"/>
           <param name="schemaObjectPrefix" value="repository_"/>
           <param name="externalBLOBs" value="true"/>
        </PersistenceManager>
    </Versioning>

    <!--
        Search index for content that is shared repository wide
        (/jcr:system tree, contains mainly versions)
    -->
    <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
        <param name="path" value="${rep.home}/repository/index"/>
    </SearchIndex>
    
     <DataStore class="org.apache.jackrabbit.core.data.FileDataStore">
        <param name="path" value="${rep.home}/repository/datastore"/>
        <param name="minRecordLength" value="100"/>
    </DataStore>
    
</Repository>



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message