Why not making a small program that will export the repo in dev (system view, if I remember correctly) and import it into stage? That way you should have exactly the same content in both. This would be a quick way to replicate a repo's contents. However, you will have to make this program a bit more intelligent if you want to merge the contents from dev into stage...
saraheg escribio': > I have 2 independent jackrabbit repositories (dev and stage). Occasionally, > I would like to migrate all the data from dev to stage. I am using a db for > persistence, so to do this I erase the current stage db tables (all tables > starting with client_stage_ and client_stage_version_), create new tables, > and insert the data from the client_dev_ tables. Next I delete the old > stage repository, version, and workspaces directories, and replace it with > the corresponding dev directories. > > When I then try to run stage, it looks at the right tables for versioning, > but the dev one for workspace, even though my repository.xml file has the > stage prefixes for both. I tested the repository.xml by changing the stage > table prefixes to client_stage2_ and client_stage2_version_ . Then I removed > all tables. client_dev_ and client_stage2_version_ tables were created. > > Is it getting the workspace table name somewhere besides the repository.xml > file? Is this not an acceptable way of moving this data? If not, how > should I do it? > > Here are my repository.xml files: > > stage: > > <?xml version="1.0"?> > <!-- > Licensed to the Apache Software Foundation (ASF) under one or more > contributor license agreements. See the NOTICE file distributed with > this work for additional information regarding copyright ownership. > The ASF licenses this file to You under the Apache License, Version 2.0 > (the "License"); you may not use this file except in compliance with > the License. You may obtain a copy of the License at > > http://www.apache.org/licenses/LICENSE-2.0 > > Unless required by applicable law or agreed to in writing, software > distributed under the License is distributed on an "AS IS" BASIS, > WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > See the License for the specific language governing permissions and > limitations under the License. > --> > <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD > Jackrabbit 1.2//EN" > > "http://jackrabbit.apache.org/dtd/repository-1.2.dtd"> > <!-- Example Repository Configuration File --> > <Repository> > <!-- > virtual file system where the repository stores global state > (e.g. registered namespaces, custom node types, etc.) > --> > <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"> > > </FileSystem> > > <!-- > security configuration > --> > <Security appName="Jackrabbit"> > <!-- > access manager: > class: FQN of class implementing the AccessManager interface > --> > <AccessManager > class="org.apache.jackrabbit.core.security.SimpleAccessManager"> > <!-- --> > </AccessManager> > > <LoginModule > class="org.apache.jackrabbit.core.security.SimpleLoginModule"> > <!-- anonymous user name ('anonymous' is the default value) --> > > <!-- > default user name to be used instead of the anonymous user > when no login credentials are provided (unset by default) > --> > <!-- --> > </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"> > > </FileSystem> > <!-- > persistence manager of the workspace: > class: FQN of class implementing the PersistenceManager > interface > --> > <PersistenceManager > class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager"> > > > > > > > > </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"> > > </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"> > > </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.db.SimpleDbPersistenceManager"> > > > > > > > > </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"> > > </SearchIndex> > > <Cluster id="cm"> > <Journal class="org.apache.jackrabbit.core.journal.FileJournal"> > > > </Journal> > </Cluster> > </Repository> > > > dev: > > <?xml version="1.0"?> > <!-- > Licensed to the Apache Software Foundation (ASF) under one or more > contributor license agreements. See the NOTICE file distributed with > this work for additional information regarding copyright ownership. > The ASF licenses this file to You under the Apache License, Version 2.0 > (the "License"); you may not use this file except in compliance with > the License. You may obtain a copy of the License at > > http://www.apache.org/licenses/LICENSE-2.0 > > Unless required by applicable law or agreed to in writing, software > distributed under the License is distributed on an "AS IS" BASIS, > WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > See the License for the specific language governing permissions and > limitations under the License. > --> > <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD > Jackrabbit 1.2//EN" > > "http://jackrabbit.apache.org/dtd/repository-1.2.dtd"> > <!-- Example Repository Configuration File --> > <Repository> > <!-- > virtual file system where the repository stores global state > (e.g. registered namespaces, custom node types, etc.) > --> > <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"> > > </FileSystem> > > <!-- > security configuration > --> > <Security appName="Jackrabbit"> > <!-- > access manager: > class: FQN of class implementing the AccessManager interface > --> > <AccessManager > class="org.apache.jackrabbit.core.security.SimpleAccessManager"> > <!-- --> > </AccessManager> > > <LoginModule > class="org.apache.jackrabbit.core.security.SimpleLoginModule"> > <!-- anonymous user name ('anonymous' is the default value) --> > > <!-- > default user name to be used instead of the anonymous user > when no login credentials are provided (unset by default) > --> > <!-- --> > </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"> > > </FileSystem> > <!-- > persistence manager of the workspace: > class: FQN of class implementing the PersistenceManager > interface > --> > <PersistenceManager > class="org.apache.jackrabbit.core.persistence.db.SimpleDbPersistenceManager"> > > > > > > > > </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"> > > </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"> > > </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.db.SimpleDbPersistenceManager"> > > > > > > > > </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"> > > </SearchIndex> > > <Cluster id="cm"> > <Journal class="org.apache.jackrabbit.core.journal.FileJournal"> > > > </Journal> > </Cluster> > </Repository> > >
