You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Unknown macro: {rate}

If you lost superuser password and are unable log in, use this procedure to reset the account back to its default settings.
In case the user has been locked use the instructions here

  1. Stop Magnolia CMS.
  2. Copy the following JSP script and save it to your docroot folder, for example <apache-tomcat>/webapps/magnoliaAuthor/docroot/recovery-script.jsp.
    <%@ page contentType="text/plain" %>
    <%@ page import="info.magnolia.importexport.BootstrapUtil"%>
    <%@ page import="info.magnolia.context.*"%>
    <%@ page import="info.magnolia.cms.util.ContentUtil"%>
    <%@ page import="info.magnolia.cms.core.HierarchyManager"%>
    <%@ page import="javax.jcr.Node"%>
    <%@ page import="javax.jcr.ImportUUIDBehavior"%>
    <%
    info.magnolia.context.MgnlContext.setInstance(new info.magnolia.context.SingleJCRSessionSystemContext());
    try{
      BootstrapUtil.bootstrap(new String[]{"/mgnl-bootstrap/core/users.system.superuser.xml"}, 
        ImportUUIDBehavior.IMPORT_UUID_COLLISION_REMOVE_EXISTING);
      HierarchyManager hm = MgnlContext.getHierarchyManager("users");
      hm.save();
      } catch (Exception e) {
      System.out.println(e);
      }
      System.out.println("finished");
    %>
    
  3. Open <apache-tomcat>/webapps/magnoliaAuthor/WEB-INF/web.xml in a text editor.
  4. Add the following servlet mapping after the <distributable/> node.
    <servlet-mapping>
      <servlet-name>jsp</servlet-name>
      <url-pattern>/docroot/recovery-script.jsp</url-pattern>
    </servlet-mapping>
    
  5. Comment out the <filter> and <filter-mapping> sections.
    <!-- filter>
      <display-name>Magnolia global filters</display-name>
      <filter-name>magnoliaFilterChain</filter-name>
      <filter-class>info.magnolia.cms.filters.MgnlMainFilter</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>magnoliaFilterChain</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
      <dispatcher>INCLUDE</dispatcher>
      <dispatcher>ERROR</dispatcher>
    </filter-mapping -->
    

    This will also disable the URI security filter, making your system vulnerable. Use a firewall or Apache Web Server in front of your application server to prevent unauthorized access while you do this.

  6. Save the web.xml file.
  7. Start Magnolia CMS.
  8. Request the JSP script at http://localhost:8080/magnoliaAuthor/docroot/recovery-script.jsp.
    The script will bootstrap the superuser account to default settings. You should see the following line in the log:
    WARN  info.magnolia.importexport.BootstrapUtil: 
    Deleted already existing node for bootstrapping: 
    /system/superuser
    
  9. Stop Magnolia CMS.
  10. Remove the servlet mapping you added to web.xml and uncomment the <filter> and <filter-mapping> sections.
  11. Start Magnolia CMS.
  12. Log in as superuser with password superuser.
  • No labels