This blog shows how to develop OpenESB component project in few steps using maven archetype. New generated projects can be built with OpenESB build process. The project generated using the following maven archetype will be similar to the existing component folder structure and can ONLY be built with OpenESB build process.
Following two categories are possible for projects in OpenESB component development.
– Plugin project – This project will build with netbeans-soa build process.
– Component project – This project will build with ojc-core in openesb-component
======================================
Install Archetypes in Users local repository:
======================================
NOTE: Maven version should be 2.0.9 as same as OpenESB
1 – Checkout Archetype projects from OpenESB git repository: (openesb-components\maven-ojc-archeType-v2)
maven-archetype-service-engine-v2
maven-archetype-binding-component-v2
maven-archetype-service-engine-plugin-v2
maven-archetype-binding-component-plugin-v2
Archetype of Service Engine
———————————
1.1) Change directory to maven-archetype-service-engine-v2/
$ mvn clean install
Archetype of Binding Component
———————————
1.2) Change directory to maven-archetype-binding-component-v2/
$ mvn clean install
Archetype of Service Engine’s Plugin/Module Project
———————————
1) Change directory to maven-archetype-service-engine-plugin-v2/
$ mvn clean install
Archetype of Binding Component’s Plugin/Module Plugin Project
———————————
1) Change directory to maven-archetype-binding-component-plugin-v2/
$ mvn clean install
==================Installation complete for all archetype in User’s Local repository==============
=================================================
Building Projects from archetypes
=================================================
1) Create new service engine:
mvn archetype:generate -DarchetypeGroupId=open-jbi-components -DarchetypeArtifactId=service-engine-ojc-archetype \
-DarchetypeVersion=2.3.0 -DgroupId=newse -DartifactId=newse
–OutPut for above command requires user input
[INFO] Scanning for projects…
[INFO] Searching repository for plugin with prefix: ‘archetype’.
……
[GIVE THE Command line params options as per your wish and openESB configuration.
[INFO] Using property: groupId = newse
[INFO] Using property: artifactId = newse
Define value for property ‘version’: 1.0-SNAPSHOT:
[INFO] Using property: package = newse
[INFO] Using property: componentName = newse
Confirm properties configuration:
groupId: newse
artifactId: newse
version: 1.0-SNAPSHOT
package: newse
componentName: newse
Y:
[INFO] —————————————————————————-
[INFO] Using following parameters for creating project from Archetype: service-engine-ojc-archetype:2.3.0
[INFO] —————————————————————————-
[INFO] ————————————————————————
[INFO] BUILD SUCCESSFUL
[INFO] ————————————————————————
[INFO] Total time: 2 minutes 49 seconds
[INFO] Finished at: Wed Jul 31 12:34:16 IST 2013
[INFO] Final Memory: 20M/50M
[INFO] ————————————————————————
=========================== Project build is done ==================================
Open New project in OpenESB 2.3, and to build run smvn.bat clean install.
2) Create new binding component:
mvn archetype:generate -DarchetypeGroupId=open-jbi-components -DarchetypeArtifactId=binding-component-ojc-archetype \
-DarchetypeVersion=2.3.0 -DgroupId=newbc -DartifactId=newbc
–OutPut for above command requires user input
–Follow same steps and give input as it will ask.
Open New project in OpenESB 2.3, and to build run smvn.bat clean install.
3) Create new service engine plugin:
mvn archetype:generate -DarchetypeGroupId=open-jbi-components -DarchetypeArtifactId=ServiceEngine-Plugin-archetype \
-DarchetypeVersion=1.0-SNAPSHOT -DgroupId=newsemodule -DartifactId=newsemodule -Dgoals=antrun:run
–OutPut for above command requires user input
–Follow same steps and give input as it will ask.
Open New project in OpenESB 2.3 IDE and build with netbeans-soa.
3) Creating new service engine plugin:
mvn archetype:generate -DarchetypeGroupId=open-jbi-components -DarchetypeArtifactId=BindingComponent-Plugin-archetype \
-DarchetypeVersion=2.3.0 -DgroupId=newbcmodule -DartifactId=newbcmodule -Dgoals=antrun:run
–OutPut for above command requires user input
–Follow same steps and give input as it will ask.
Open New project in OpenESB 2.3 IDE and build with netbeans-soa.
This guide is also present as Online OpenESB documentation : https://openesb.atlassian.net/wiki/pages/viewpage.action?pageId=8388611