Goal
Have a partially migrated repository and webapp.
Updating security in the webapp and the repository
In this step you need to update security configuration twice in the webapp and once in the repository. See Security changes in Magnolia 4.5 for details.
Update node types
Changes the node types according to API changes in 4.5.
Update the magnolia.properties file
New properties have been added to the magnolia.properties
file. Add them to your own properties file. If you don't find the file in the configuration of your project look in the WEB-INF/config/default
folder in a bundled Magnolia.
Properties:
magnolia.home
- By default, the value is themagnolia.app.rootdir
property which is the root of where the webapp is deployed. Typically, you would set this single property to a folder of your choice to store repositories, caches, logs, temp files etc. outside the webapp. Not mandatory but can be useful.magnolia.author.key.location
- Indicates where Magnolia should store the file that contains the private and public keys used to verify the authenticity of activation requests. This file is generated if not present.magnolia.service.contact
- Set a contact string which will be displayed on login pages so users who can't log into their Magnolia instance know what to do and who to contact. Optional.magnolia.bootstrap.samples
- Some modules contain optional sample content. They will check this property to decide if they should install the sample data. Set tofalse
.
You can update the properties files manually or run the mprop.py
Python script. The script is in the add-ons
folder in the magnolia-4.5-migration
bundle in Nexus. 4.5.9+
To run the script mprop.py
:
jsmith:~ $ ./mprop.py magnolia-enterprise-4.4.6/apache-tomcat-6.0.32/webapps/magnoliaAuthor/WEB-INF/config/default/magnolia.properties magnolia-enterprise-4.4.6/apache-tomcat-6.0.32/webapps/magnoliaPublic/WEB-INF/config/default/magnolia.properties
Update web.xml
Update the web.xml file of the webapp. The listener class and the context-param entries have changed. You need to adjust at least the listener class in your project's web.xml.
In the <listener>
section, change the <listener-class>
value to:
info.magnolia.init.MagnoliaServletContextListener
Result
Now Magnolia is ready to restart.