Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCU-577

How can I recreate users in mysql after moving from derby to mysql

XMLWordPrintable

    • Icon: Installation and Migration Installation and Migration
    • Resolution: Done
    • Icon: Neutral Neutral
    • None
    • None
    • documentation-examples

      I am in the process of moving the filesystem and persistance managers from LocalFileSystem and DerbyPersistanceManager to MySqlPersistanceManager.

      Most of the workspace.xml files in the repositories folders have been updated from:

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

      <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
      <param name="url" value="jdbc:derby:${wsp.home}/db;create=true"/>
      <param name="schemaObjectPrefix" value="${wsp.name}_"/>
      <param name="consistencyCheck" value="true" />
      <param name="consistencyFix" value="true" />
      </PersistenceManager>

      To:

      <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
      <param name="driver" value="com.mysql.jdbc.Driver" />
      <param name="url" value="jdbc:mysql://xxxx.ec.fasthit.net.au/xxxx" />
      <param name="user" value="xxxx" />
      <param name="password" value="xxxx" />
      <param name="schema" value="mysql"/>
      <param name="schemaObjectPrefix" value="${wsp.name}_"/>
      </FileSystem>
      <PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.MySqlPersistenceManager">
      <param name="dataSourceName" value="xxxx"/>
      <param name="schemaObjectPrefix" value="${wsp.name}_"/>
      <param name="consistencyCheck" value="true" />
      <param name="consistencyFix" value="true" />
      </PersistenceManager>

      The WAR file is compiles and Tomcat starts up fine with this configuration with no errors.

      However when I load up the page catalina shows the following error:

      2015-08-26 13:24:21,175 ERROR info.magnolia.cms.security.JCRSessionOp : Error caught while loading the system user anonymous: javax.jcr.PathNotFoundException: /system/anonymous
      javax.jcr.PathNotFoundException: /system/anonymous
      at org.apache.jackrabbit.core.ItemManager.getNode(ItemManager.java:577)
      at org.apache.jackrabbit.core.session.SessionItemOperation$6.perform(SessionItemOperation.java:129)
      at org.apache.jackrabbit.core.session.SessionItemOperation$6.perform(SessionItemOperation.java:125)
      at org.apache.jackrabbit.core.session.SessionItemOperation.perform(SessionItemOperation.java:187)
      at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216)
      at org.apache.jackrabbit.core.SessionImpl.perform(SessionImpl.java:361)
      at org.apache.jackrabbit.core.SessionImpl.getNode(SessionImpl.java:1111)
      at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getNode(DelegateSessionWrapper.java:177)
      at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getNode(DelegateSessionWrapper.java:177)
      at info.magnolia.jcr.wrapper.NodeWrappingDelegateSessionWrapper.getNode(NodeWrappingDelegateSessionWrapper.java:53)
      at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getNode(DelegateSessionWrapper.java:177)
      at info.magnolia.jcr.decoration.ContentDecoratorSessionWrapper.getNode(ContentDecoratorSessionWrapper.java:120)
      at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getNode(DelegateSessionWrapper.java:177)
      at info.magnolia.jcr.decoration.ContentDecoratorSessionWrapper.getNode(ContentDecoratorSessionWrapper.java:120)
      at info.magnolia.cms.security.SystemUserManager$2.doExec(SystemUserManager.java:174)
      at info.magnolia.cms.security.SystemUserManager$2.doExec(SystemUserManager.java:167)
      at info.magnolia.cms.security.SilentSessionOp.exec(SilentSessionOp.java:69)
      at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:385)
      at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:371)
      at info.magnolia.cms.security.SystemUserManager.getRequiredSystemUser(SystemUserManager.java:167)
      at info.magnolia.cms.security.SystemUserManager.getAnonymousUser(SystemUserManager.java:138)
      at info.magnolia.cms.security.SystemUserManager.getAnonymousSubject(SystemUserManager.java:145)
      at info.magnolia.cms.security.Security.getAnonymousSubject(Security.java:90)
      at info.magnolia.context.UserContextImpl.getSubject(UserContextImpl.java:97)
      at info.magnolia.context.UserContextImpl.getUser(UserContextImpl.java:77)
      at info.magnolia.context.MgnlContext.getUser(MgnlContext.java:91)
      at info.magnolia.voting.voters.AuthenticatedVoter.boolVote(AuthenticatedVoter.java:47)
      at info.magnolia.voting.voters.AbstractBoolVoter.vote(AbstractBoolVoter.java:53)
      at info.magnolia.voting.DefaultVoting.vote(DefaultVoting.java:56)
      at info.magnolia.cms.filters.AbstractMgnlFilter.bypasses(AbstractMgnlFilter.java:121)
      at info.magnolia.cms.filters.AbstractMgnlFilter.matches(AbstractMgnlFilter.java:92)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:83)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:127)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:112)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:129)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:106)
      at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:66)
      at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:107)
      at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:93)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:745)

      My guess is that the user needs to be recreated in Mysql. How do I do that?

      Thanks in advance.

            Unassigned Unassigned
            JonFyt Jonathan 文振英 Man
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: