Similar content

Loading

Powered by Canoo FindIT.

Enterprise Edition on Windows

Check the prerequisites

Java Runtime Environment (JRE)

Magnolia CMS needs a Java Runtime Environment (JRE). Use the Java Tester to check if you already have JRE. Java Development Kit (JDK) works too.

What is the difference? JRE is an implementation of the Java Virtual Machine which actually executes Java programs. JDK is a bundle of software that you can use to develop Java based applications. If you plan to write your own Java code get JDK. If you just want to run Magnolia CMS JRE works fine.

If you don't have JRE, download and install it from http://java.sun.com/javase/downloads/index.jsp. By default JRE is installed in C:\Program Files (x86)\java\jre6 on Windows 7. You can choose another location.

Check JAVA_HOME environment variable

  1. Open a command prompt window.
  2. At the command prompt, type set and press ENTER.
  3. Find JAVA_HOME in the command output and verify that it matches the path to your JDK installation directory, for example C:\Program Files (x86)\java\jre6k.
  4. If JAVA_HOME is missing or points to the wrong directory, see Set JAVA_HOME environment variable. If everything is OK, go to Download Magnolia CMS.

Set JAVA_HOME environment variable

  1. Right-click My Computer and select Properties.
  2. Go to the Advanced tab.
    (In Windows 7, right-click Computer and select Advanced System Settings, then Environment variables.)
  3. If the JAVA_HOME environment variable does not exist in User variables or System variables, create it:
    • User variables apply to the currently signed-in user only. Create JAVA_HOME here if you want it to apply only to the currently logged in user. These variables take precedence over system variables.
    • System variables apply to all users. Create JAVA_HOME here if you want it to apply to all users. You must be an administrator to modify a system environment variable.
  4. Set the value of JAVA_HOME to the path of your JRE installation directory, for example C:\Program Files (x86)\java\jre6.
  5. Optional step: Add the Magnolia CMS bin directory to the PATH variable, for example C:\Program Files\magnolia\apache-tomcat-5.5.27\bin. Setting the PATH allows you to issue the Magnolia CMS start and stop commands from anywhere without navigating to the installation directory first. Separate the path from existing paths with a semicolon ( ; ). If you do this, you also need to add CATALINA_HOME to environment variables. Set the value of CATALINA_HOME to the Tomcat installation directory, for example C:\Program Files\magnolia\apache-tomcat-5.5.27
  6. Click OK.
  7. Test that the variable is found and has the correct value. You need to open a new command prompt since environment variables are session specific.

Register for license key

Magnolia CMS Enterprise Edition is available for a free 60-day trial. To get a license key you must register.

  1. Go to http://registration.magnolia-cms.com/.
  2. Fill the form with your details. A license key will be sent to the email address you provide.
If you bought an Enterprise license, a license key will be sent to you upon signing of the Magnolia Network Agreement.

Download, install and run Magnolia CMS

Download

  1. Go to http://files.magnolia-cms.com/.
  2. Click the latest Magnolia CMS version.
  3. Download the "Installer for Bundle with Tomcat" JAR file. The file name depends on the release, for example magnolia-enterprise-installer-4.2.3.jar.

Install

  1. Double-click the JAR file you downloaded. The installer starts.
  2. Select an installation language and click OK.
  3. Click Next.
  4. Accept the license terms and click Next.
  5. Optional: Configure Magnolia CMS to use a Java Runtime Environment other than your default JRE. The default is usually fine. Click Next.
  6. Click Next.
  7. Select the installation path. Default is C:\Program Files\MagnoliaEnterpriseEdition.
  8. Click Next. Installation will start.
  9. Click Next.
  10. Click Done.
The folder structure of the installed application looks like this:
C:\Program Files
    MagnoliaEnterpriseEdition
        add-ons
        apache-tomcat
            bin
            common
            conf
            logs
            server
            shared
            webapps
                MagnoliaAuthor
                MagnoliaPublic
                ROOT

Run

Use the Start and Stop icons that the installer adds on your desktop or Programs menu.

You can also start Magnolia CMS using the command line.

  1. Open a command prompt and go to the Magnolia CMS installation directory.
    cd C:\Program Files\magnolia-4.2.3\apache-tomcat-5.5.27\bin
  2. Start Magnolia CMS
    magnolia_control.bat start
Magnolia reports startup information in a new Tomcat window. If startup fails, look for the reason in the report. See Troubleshooting to resolve issues. In a successful startup the last line reads: INFO: Server startup in 12345 ms

Tip

To stop Magnolia CMS, type ./magnolia_control.bat stop and press ENTER.

Run the Web update

  1. Open a browser and go to http://localhost:8080.
  2. Click the Run the Web update on the author instance link.
    A list of modules that need updating is displayed.
  3. Click Start install.
    The modules are updated.
  4. Click Start up Magnolia.
Repeat the update on the public instance.
  1. Open a browser and go to http://localhost:8080.
  2. Click the Run the Web update on the public instance link.
    A list of modules that need updating is displayed.
  3. Click Start install.
    The modules are updated.
  4. Click Start up Magnolia.

Register

Now you need the license key that was sent to your email address. Copy only the key string part from the message. Fill in the same email address that you used when registering.

Log in to author instance

At the login page, sign in with:

  • Username: superuser
  • Password: superuser
Info

Superuser is a system administration account that has permission to every function. End users should not use this account. See Users for instructions how to create new user accounts and Default users for accounts that you can use for testing right away.

The AdminCentral is displayed.

Troubleshooting

JAR file does not start

Typically you can start the installer by double-clicking the JAR file. If this does not work there is a chance that some application on your system has registered the .jar extension. You can try to fix it yourself, re-associate the extension with the javaw.exe executable (right-click the JAR file and select Open With. Typically javaw.exe file is in C:\Program Files (x86)\java\jre6\bin), or start the installer from a command prompt with the following command: java -jar magnolia-enterprise-installer-4.2.3.jar. Make sure the file extension is .jar. Internet Explorer has a tendency to append or change it to .zip.

Port 8080 is already in use

Port 8080 is the default port for Tomcat. You can see it at the end of the default address http://localhost:8080. If another application on the computer is already using the same port you may need to change it.
  1. Open /apache-tomcat/conf/server.xml in a text editor. This file is under your Magnolia CMS installation directory.
  2. Find the following section and set the value of port to something other than 8080, for example 8090:
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector port="8090" maxHttpHeaderSize="8192"
           maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
           enableLookups="false" redirectPort="8443" acceptCount="100"
           connectionTimeout="20000" disableUploadTimeout="true" />

Change the defaultBaseUrl property which is used to generate links in emails or other external systems. To do this, you need to now access Magnolia at the new port 8090.

  1. Log into the author instance at http://localhost:8090/magnoliaAuthor/.magnolia.
  2. Go to Configuration.
  3. Set the value of /server/defaultBaseUrl property to http://localhost:8090/magnolia/.
  4. Log into the public instance at http://localhost:8090/magnoliaPublic/.magnolia.
  5. Go to Configuration.
  6. Set the value of /server/defaultBaseUrl property to http://localhost:8090/magnolia/.
Now the Welcome page at http://localhost:8090 has the correct URLs too.

The port also needs to be changed in publishing configuration, otherwise activating changes from the author to public instance fails.

  1. On the author instance, go to Configuration > Subscribers.
  2. Edit the magnoliaPublic8080 subscriber. Set the URL property to http://localhost:8090/magnoliaPublic.
  3. Rename the subscriber to magnoliaPublic8090.
  4. Activate the modified subscriber including its subnodes.

Windows Firewall is blocking Java

Allow an exception in Windows Firewall for Java.

  1. Go to Control Panel > Windows Firewall.
  2. Go to the Exceptions tab.
  3. Click Add Program and browse to the java.exe file in the Java installation directory, for example C:\Program Files (x86)\java\jre6\bin\java.exe.
  4. Click OK.
If you get a security alert during startup, check the Private networks checkbox and click Allow access.

CATALINA_HOME environment variable is not defined

CATALINA_HOME environment variable identifies the Tomcat home directory, for example C:\Program Files\magnolia\apache-tomcat. Usually Magnolia CMS finds this directory automatically. When you type magnolia_control.bat start in the bin directory to start the system, a second script named startup.bat tries to find Tomcat home. It assumes that Tomcat home is one level above the bin directory where you issued the command, and sets the value of CATALINA_HOME to that directory.

C:\Program Files
    magnolia
        apache-tomcat   <-- Tomcat home directory
            bin         <-- magnolia_control.bat is here

However, if you added the bin directory to your PATH environment variable you can execute magnolia_control.bat from anywhere. This means startup.bat does not find Tomcat home directory by simply moving up one level from where you are and displays the following error:

To correct this define CATALINA_HOME in environment variables. Follow the instructions in Set JAVA_HOME environment variable.

Java out of memory

If the Java Virtual Machine (JVM) does not have enough memory you may see a java.lang.OutOfMemoryError in the startup log and Magnolia CMS fails to start.

Exception in thread "Timer-1" java.lang.OutOfMemoryError: Java heap space
	at org.apache.jackrabbit.core.query.lucene.IndexingQueue.getFinishedDocuments
Increase Java heap size to allocate more memory to JVM:
  1. Stop the server.
    magnolia_control stop
  2. Open file /apache-tomcat/bin/setenv.bat in a text editor.
  3. Edit the Xmx parameter to set a new maximum heap size. Default size for Magnolia CMS is 512M, try a higher amount such as 1024M.
  4. Save the file and start the server.
    magnolia_control start