Page 1 of 1

Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 5:24 am
by tobi
Hello everyone,

we have an OpenKM 3.0 Enterprise Installation running. Now I am trying to update it to OpenKM 4.1RC1.
On the Wiki I found a migrating tool. But if I running the tool, after 9% it crashed with an error.

Now I have no idea, why this error occurs. And how I can update the 3.0 Installation to the 4.1 Installation.

I start the migrating tool with:
Code: Select all
java -Xmx1024m -jar OKMUtils-4.0.jar /var/www/openkm/OpenKM-3.0-Enterprise-JBoss-4.2.2.GA/repository.xml /var/www/openkm/OpenKM-3.0-Enterprise-JBoss-4.2.2.GA/repository /var/www/openkm4.1/jboss-4.2.3.GA_OpenKM-4.1_RC1/repository.xml /var/www/openkm4.1/jboss-4.2.3.GA_OpenKM-4.1_RC1/repository

Here is the Error, possibly anyone has a idea:
Code: Select all
        at org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:310)
        at org.apache.jackrabbit.core.state.SessionItemStateManager.update(SessionItemStateManager.java:317)
        at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1247)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:369)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.main(RepositoryUpgrade.java:148)
ERROR org.apache.jackrabbit.core.observation.ObservationDispatcher - Synchronous EventConsumer threw exception.
java.lang.NoSuchMethodError: org.apache.poi.poifs.filesystem.POIFSFileSystem.getRoot()Lorg/apache/poi/poifs/filesystem/DirectoryEntry;
        at org.textmining.text.extraction.WordExtractor.extractText(WordExtractor.java:51)
        at org.apache.jackrabbit.extractor.MsWordTextExtractor.extractText(MsWordTextExtractor.java:67)
        at org.apache.jackrabbit.extractor.CompositeTextExtractor.extractText(CompositeTextExtractor.java:90)
        at org.apache.jackrabbit.core.query.lucene.JackrabbitTextExtractor.extractText(JackrabbitTextExtractor.java:195)
        at org.apache.jackrabbit.core.query.lucene.NodeIndexer.addBinaryValue(NodeIndexer.java:393)
        at org.apache.jackrabbit.core.query.lucene.NodeIndexer.addValue(NodeIndexer.java:282)
        at org.apache.jackrabbit.core.query.lucene.NodeIndexer.createDoc(NodeIndexer.java:221)
        at org.apache.jackrabbit.core.query.lucene.SearchIndex.createDocument(SearchIndex.java:899)
        at org.apache.jackrabbit.core.query.lucene.SearchIndex$2.next(SearchIndex.java:550)
        at org.apache.jackrabbit.core.query.lucene.MultiIndex.update(MultiIndex.java:429)
        at org.apache.jackrabbit.core.query.lucene.SearchIndex.updateNodes(SearchIndex.java:534)
        at org.apache.jackrabbit.core.SearchManager.onEvent(SearchManager.java:505)
        at org.apache.jackrabbit.core.observation.EventConsumer.consumeEvents(EventConsumer.java:231)
        at org.apache.jackrabbit.core.observation.ObservationDispatcher.dispatchEvents(ObservationDispatcher.java:201)
        at org.apache.jackrabbit.core.observation.EventStateCollection.dispatch(EventStateCollection.java:421)
        at org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(SharedItemStateManager.java:737)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.update(SharedItemStateManager.java:873)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:334)
        at org.apache.jackrabbit.core.state.XAItemStateManager.update(XAItemStateManager.java:337)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:310)
        at org.apache.jackrabbit.core.state.SessionItemStateManager.update(SessionItemStateManager.java:317)
        at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1247)
        at org.apache.jackrabbit.core.NodeImpl.checkin(NodeImpl.java:2978)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:370)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.main(RepositoryUpgrade.java:148)
(9%) DOCUMENT: /okm:root/JPD/Projekte/Jugendmedientage/2006_JMT_Berlin/Konzepte/051207 JMT 2006 - Inhaltskonzept.pdf -> /okm:root/JPD/Projekte/Jugendmedientage/2006_JMT_Berlin/Konzepte
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:330)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.migrationHelper(RepositoryUpgrade.java:402)
        at com.openkm.util.RepositoryUpgrade.main(RepositoryUpgrade.java:148)

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 10:24 am
by jllort
No No No,

1- First make sure you've got a backup, before starting migration
2- You must not migrate to OpenKM 4.1-RC ( because it's a release candidate you must be waiting we release a 4.1 Stable ), you must migrate to 4.0 Stable version

Probably the error is because the method exists in OpenKM 4.0 version not in 4.1 ( after migrating to 4.0 version you'll not need to migrate to 4.1 Stable because there're not repository changes between 4.0 and 4.1 version , you'll only neew to upgrade OpenKM.war file , ) BUT please first make the migration from 3.0 to 4.0 not 4.1 !!!!

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 10:42 am
by tobi
OK, thanks for the answer! I will try if it works...

But I still have one question: The Migration-Tool is only for the repository, right? What is with the Users an the Roles, is there any way to migrate them into the new version? Or will the Migration-Tool do this too?

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 10:48 am
by jllort
MIgration tool is only for repository.

You'll must connect to database to make the rest of migration process manually ( take a look here )

We would like to make all process automatically, but because we've got several types of databases installation it's still not possible ( we're working on 5.0 to include hibernate to make it definetivelly independant and making migration process less tedious )

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 3:37 pm
by tobi
jllort wrote: You'll must connect to database to make the rest of migration process manually ( take a look here )
This is from wiki: "CREATE TABLE twitter_accounts(ta_id IDENTITY, ta_user VARCHAR(32), ta_tuser VARCHAR(32), ta_active BOOLEAN, PRIMARY KEY(ta_id));"


But how I execute this commands? I don´t use MySQL or anything else in OpenKM3.0. I found a file in which are the Users, Passwords and Rules are standing. So do I have to create the users in OpenKM4 by hand again? This would not be very cool but if this were a possible way to go then I would go this way.

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Thu Apr 15, 2010 5:03 pm
by jllort
OpenKM By default comes with hypersonic database ( under /server/data/hypersonic )

Look here to browser this database

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Wed May 05, 2010 6:17 am
by tobi
jllort wrote:No No No,

1- First make sure you've got a backup, before starting migration
2- You must not migrate to OpenKM 4.1-RC ( because it's a release candidate you must be waiting we release a 4.1 Stable ), you must migrate to 4.0 Stable version

Probably the error is because the method exists in OpenKM 4.0 version not in 4.1 ( after migrating to 4.0 version you'll not need to migrate to 4.1 Stable because there're not repository changes between 4.0 and 4.1 version , you'll only neew to upgrade OpenKM.war file , ) BUT please first make the migration from 3.0 to 4.0 not 4.1 !!!!

Okay, I tried that. But I get the same error. Do you have any ideas, what I can try? Or is there another way to put the old repos-datas into the new OpenKM?

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Wed May 05, 2010 10:35 am
by jllort
Sorry but I'm lost.

Which error ( the same error but which, first you're talking about migration repository process error, and then about mysql ), be more specific.

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Wed May 05, 2010 12:13 pm
by tobi
The same error as in my first post of this topic. And at the same position... 9%, the same file.

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Fri May 07, 2010 11:41 am
by pavila
I've uploaded a new OpenKM Utilities package in to the 4.1 release, please try with this one.

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Fri May 07, 2010 8:55 pm
by tobi
Did you change any syntax for the execution of this jar-file? I got an error, when I try to execute it:

finchen# java -Xmx1024m -jar utilities.jar /var/www/openkm/OpenKM-3.0-Enterprise-JBoss-4.2.2.GA/repository.xml /var/www/openkm/OpenKM-3.0-Enterprise-JBoss-4.2.2.GA/repository /var/www/openkm4.1/jboss-4.2.3.GA_OpenKM-4.1_RC1/repository.xml /var/www/openkm4.1/jboss-4.2.3.GA_OpenKM-4.1_RC1/repository
Usage: java -cp OKMUtils.jar <utility>
Where <utility> may be:
com.openkm.util.RepositoryUpgrade
com.openkm.util.ViewRepository
com.openkm.util.Traverse
com.openkm.util.GenerateUUID
com.openkm.util.CheckExtractors
com.openkm.util.CheckOOExtractor
com.openkm.util.TestZip
com.openkm.util.GenerateLockToken
com.openkm.util.CheckWorkForm
com.openkm.util.GenerateSchema
-----------
In (1) to (3) you need additional parameters like:
-Xmx512m

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Wed May 12, 2010 7:56 am
by pavila
You should run the migration utility as:
Code: Select all
java -cp OKMUtils.jar com.openkm.util.RepositoryUpgrade

Re: Update OpenKM3.0-Enterprise to OpenKM4.1RC1

PostPosted:Wed Aug 11, 2010 8:55 am
by rmartinez
We have the same error migrating from 3.0 to 4.0.:

ERROR org.apache.jackrabbit.core.observation.ObservationDispatcher - Synchronous EventConsumer threw exception.
java.lang.NoSuchMethodError: org.apache.poi.poifs.filesystem.POIFSFileSystem.getRoot()Lorg/apache/poi/poifs/filesystem/DirectoryEntry;

Any idea?