Hi Robert, I'm not too familiar with the upgrade module, but I think it doesn't support security configuration via JAAS. The NPE also indicates your repository.xml does not have security manager set. Can you try to set your SecurityManager in the repository.xml?
See also: http://jackrabbit.apache.org/jcr/jackrabbit-configuration.html#security-configuration
Though, it would probably be better to fix the RepositoryUpgrade code because the SecurityManager element is actually optional. Regards Marcel On 20/09/16 16:40, Robert Haycock wrote:
Hi, I have a jackrabbit repository (2.6.4) and I want to migrate to oak. I tried... Java -jar oak-upgrade-1.4.7.jar <path to JCR repo> <path to repo xml> mongodb://localhost:27017/oak It complained about the mysql driver missing. So I copied the oak-upgrade project and added the mysql dependency. Then it couldn't find my custom search index class, so I commented it out of the xml. Then it couldn't find the security manager class configured in my JAAS config so I created one, a blank implementation where all methods returned true. Just as I thought it was doing something I ran into this.... C:\work\MyCompToOakUpgrader>java -Djava.security.auth.login.config=c:/work/MyComp/MyComp-backend/jaas.config -jar target/MyComp-to-oak-upgrader-1.4.7.jar c://work/MyComp-repository c://work/MyComp/MyComp-backend/MyComp-repository.xml mongodb://localhost:27017/oak 20.09.2016 15:36:10.936 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.MigrationOptions - DataStore needs to be shared with new repository 20.09.2016 15:36:10.937 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.MigrationOptions - copyVersions parameter set to 1970-01-01 20.09.2016 15:36:10.940 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.MigrationOptions - copyOrphanedVersions parameter set to 1970-01-01 20.09.2016 15:36:10.941 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.MigrationOptions - Cache size: 256 MB 20.09.2016 15:36:10.952 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.StoreArguments - Source: JCR2_DIR_XML[c://work/MyComp-repository, c://work/MyComp/MyComp-backend/MyComp-repository.xml] 20.09.2016 15:36:10.954 [main] *INFO* org.apache.jackrabbit.oak.upgrade.cli.parser.StoreArguments - Destination: MONGO[mongodb://localhost:27017/oak] 20.09.2016 15:36:11.042 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - Starting repository... 20.09.2016 15:36:11.482 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - initializing workspace 'default'... 20.09.2016 15:36:11.550 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - workspace 'default' initialized 20.09.2016 15:36:11.552 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - SecurityManager = class org.apache.jackrabbit.core.security.simple.SimpleSecurityManager 20.09.2016 15:36:11.560 [main] *INFO* org.apache.jackrabbit.core.security.simple.SimpleSecurityManager - init: using JAAS LoginModule configuration for MyCompManagerLoginModule 20.09.2016 15:36:11.565 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - Repository started (523ms) 20.09.2016 15:36:11.842 [main] *INFO* org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentStore - Configuration maxReplicationLagMillis 21600000, maxDeltaForModTimeIdxSecs 60, disableIndexHint false, WriteConcern { "getlasterror" : 1} / (Continue on error? false) 20.09.2016 15:36:12.136 [main] *INFO* org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore - Initialized DocumentNodeStore with clusterNodeId: 1 (id: 1, startTime: 1474382172101, machineId: mac:00ff1377ebc4, instanceId: C:\work\MyCompToOakUpgrader, pid: 7212, uuid: a8599b2e-f2c1-48d7-8804-113d11275191, readWriteMode: null, state: NONE, revLock: NONE, oakVersion: 1.4.7) 20.09.2016 15:36:12.154 [main] *INFO* org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade - Copying repository content from c:\work\MyComp-repository to Oak 20.09.2016 15:36:12.167 [main] *INFO* org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore - Starting disposal of DocumentNodeStore with clusterNodeId: 1 (id: 1, startTime: 1474382172101, machineId: mac:00ff1377ebc4, instanceId: C:\work\MyCompToOakUpgrader, pid: 7212, uuid: a8599b2e-f2c1-48d7-8804-113d11275191, readWriteMode: null, state: NONE, revLock: NONE, oakVersion: 1.4.7) 20.09.2016 15:36:12.171 [main] *INFO* org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore - Disposed DocumentNodeStore with clusterNodeId: 1 20.09.2016 15:36:12.171 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - Shutting down repository... 20.09.2016 15:36:12.174 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - shutting down workspace 'default'... 20.09.2016 15:36:12.174 [main] *INFO* org.apache.jackrabbit.core.observation.ObservationDispatcher - Notification of EventListeners stopped. 20.09.2016 15:36:12.178 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - workspace 'default' has been shutdown 20.09.2016 15:36:12.182 [main] *INFO* org.apache.jackrabbit.core.RepositoryImpl - Repository has been shutdown Exception in thread "main" java.lang.RuntimeException: javax.jcr.RepositoryException: Failed to copy content at com.google.common.io.Closer.rethrow(Closer.java:149) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:58) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.main(OakUpgrade.java:42) Caused by: javax.jcr.RepositoryException: Failed to copy content at org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.copy(RepositoryUpgrade.java:525) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.upgrade(OakUpgrade.java:65) at org.apache.jackrabbit.oak.upgrade.cli.OakUpgrade.migrate(OakUpgrade.java:53) ... 1 more Caused by: java.lang.NullPointerException at org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.mapSecurityConfig(RepositoryUpgrade.java:615) at org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.copy(RepositoryUpgrade.java:388) ... 3 more Is there any way to get oak-upgrade to work? Or is there any other method of migrating? Thanks, Rob.