Getting started

Follow these descriptions to create a simple hello world plugin in 4 simple steps:

Before you start

... make sure that you have maven, java and your favourite java IDE installed

1. Create a new plugin

There is a maven archetype you can use to create the simple skeleton. Checkout the maven archetype website for further information.

When your maven installation is available on the command line, you can just paste the following command line into the terminal:

mvn archetype:generate -q \
-DarchetypeGroupId=com.novomind.ishop.plugin \
-DarchetypeGroupId=ishop-plugin-archetype \
-DarchetypeCatalog=https://apps.novomind.com/archetype/archetype-catalog.xml

This will start an interactive terminal program, that will ask some simple questions (like the group id of your plugin in creation) and create a plugin skeleton from these informations. The first run will take a moment, since maven has to load all the required packages. If you are having problems, remove the -q option and maven will tell you what the problem is.

A simple hello world plugin has been created! When you install it into a novomind iSHOP and activate it, it will display a configurable Hello World message on all pages.

2. Start programming!

The entry point of your plugin is the configurer. A configurer is included in the created plugin (usually it is called DefaultPluginConfigurer). This is where you start. Check the configureViewSnippetMapping method to learn how to embed jsp code into the frontend.

If you move or rename your DefaultPluginConfigurer be sure to adjust the path in the metadata section of the manifest file accordingly.

This configurer class is managed by Spring and therefore supports all the Spring features including annotations like @Inject, @Configuration, @ComponentScan, @EnableWebMvc and @Bean.

Check the other chapters of the plugins section to see which services the novomind iSHOP offers.

3. Adjust the manifest

The created plugin already contains the necessary manifest file. The manifest contains the metadata for your plugin: The descriptions and the screenshots and icons that are displayed in the appstore as well as the classname of the configurer in case you want to change it.

4. Review and deploy

When you have finished programming and have adjusted the manifest file, you are ready to embed the new plugin in a novomind iSHOP installation. Please contact the project manager about this. It is his responsibility to include the plugin in the shop. Due to the freedom that a plugin offers for programmers, he needs to review the plugin before it is included in the shop.