Let's take an inventory. So I have an ee bundle downloaded (community here). I started it using my command line utility. I've finished the install in Firefox and I'm tailing the log from the command window. I've got a second command window open for the CLI tool. I've moved myself into the modules directory of the author instance and I'm ready to start creating modules and templates. I'm using the Atom text editor and I have the modules directory opened as a project. Atom also provides syntax highlighting for YAML but not Freemarker. As a substitute I will associate Freemarker files as HTML to at least get partial highlighting. No so bad, with a little finagling I can probably get that all showing at one time.
Eclipse IDE is a powerful tool. It is the most popular Java IDE today. It can integrate a lot of technologies and also provides a framework for plugins. Let's set up the light development version. No Maven, no Git is needed for this. Front end, back end, those evaluating the product can find this approach useful.
- Make sure you have Java 8 JDK.
- Download a copy of Eclipse Oxygen.
Download a copy of Tomcat Server.
It should not matter which server you use. Tomcat tends to be the lightest.
- Download a copy of the war file you would like to use.
- Magnolia EE downloads: https://download.magnolia-cms.com/ (requires license key)
- Community Edition downloads: https://nexus.magnolia-cms.com/content/repositories/magnolia.public.releases/info/magnolia/bundle/
In your user home directory create a folder named
Eclipseand a sub-folder called
- Move the tomcat zip inside the workspace and unzip it.
- Move the Magnolia war file inside the workspace.
- Open Eclipse
- Select the new workspace when prompted.
- Close the Welcome tab to get to the Project Explorer.
- Configure the environment.
Close the tabs: Markers, Properties, Data Source Explorer, Snippets, Outline, and Task List.
These are really not needed for light development so we move them out of the way.
- Open the Internal Browser for convenience.
- Hide the Tool Bar. (Window > Appearance)
With this plugin you can create light modules, apps, dialogs, templates, and more with the assistance of wizards.
With light modules select only the registries you need. Create only the files you want. Link templates to existing dialogs or create new dialogs via form input.
Create a page or component template using the wizard.
Create a content app with basic features that can be customized. The content app will be created with both the browser and detail subapps. The browser subapp will come with some of the common actions already configured and arranged. The details subapp will be created with three fields using some of the more popular fields configured in the editor. The app will be generated with with a main configuration (the app level config) and a sub-folder which divides the supporting configuration into separate include files.
With the magnolia eclipse support module installed into your running instance the wizard will also create the following:
- New workspace with the same name as your app.
- New node type with the same name as your app.
- Permissions for the superuser to access the workspace.
- Registration in the app launcher.
In all cases a README file is created which provides further info on how to register the workspace in the target system and how to create the appropriate bootstraps.
Create a dialog configuration quickly using a wizard.
Creating decorations can be confusing for some. The wizard walks you through the steps to get the appropriate module and registry folders as well as the definition you wish to target.
Get the base configuration automated using the light module wizard. When selecting this option during the light-module creation a translation properties files is created in the proper folder.
Get the base configuration automated using the light module wizard. When selecting this option during the light-module creation a simple theme is created.
Virtual URI mappings
Quickly create virtual URI mappings using a wizard.
Magnolia Eclipse Support module
Offered as an extension, the Magnolia eclipse support module provides rest endpoints which allow Eclipse to query things from the registries. For example, when creating a page template you can select your preferred dialog from a drop-down rather then having to try and remember the correct format.