In order to start developing customs on CRM.COM software, you will need to setup the Java projects required. The following guide provides instructions to setup the Java projects in Eclipse IDE.
What does this section cover?
Step-By-Step Guide
- Click here to download the desired version of CRM.COM .ear file from our repository.
Import the .ear file in your workspace.
- Click here to download the sample custom projects.
- Import the sample projects in your workspace.
- Rename the custom Java projects to the desired name.
- Create/update the mpconfig.properties file.
Mpconfig Properties file
mpconfig.properties file should be placed in the same directory as your custom project(s). This file is used to define the organisation database each custom project will run on.
To achieve that, you must use the following structure: <organisation_name>=<custom_project_directory_name>
Note that you should use the organisation(data source) name as defined on your Websphere/Wildfly server. Only one custom project per organisation can be defined.
Plugins XML file
From R13 onwards you are advised to use plugins.xml instead of mpconfig.properties file. Just as mpconfig.properties file, plugins.xml file is used to define the organisation database each custom project will run on and should be placed in the same directory as your custom project(s).
This file gives you the ability to define more than one custom project per organisation database.
Note that you should use the organisation(data source) name as defined on your Websphere/Wildfly server. For a full list of plugins file attributes, go to Plugins File Documentation.
CRM.COM Java Projects
The CRM.COM .ear consists of 3 main Java projects, Crm.war, CrmAPI.war and CrmEJB.jar.
For each one of these projects, there is a corresponding custom Java project available in sample projects.
Depending on the custom to be implemented, the corresponding custom project should be modified.
Crm.war
This project includes all the files and code required to implement the View layer such as:
- Summary pages ( WebContent/pages/summary/ )
- Data Entry pages ( WebContent/pages/dataEntry/ )
- Search pages ( WebContent/pages/search/ , WebContent/pages/trees/ for tree-search pages)
- Reports ( WebContent/reports )
- Printouts ( WebContent/printouts )
- Dashboard components ( WebContent/pages/dashboards )
A detailed explanation of the view layer can be found at Developing the View layer.
In addition, this project includes all the metadata required for the application to function correctly.
- Application metadata
- Module metadata
- Menu options metadata
- Entity metadata
- Entity fields metadata
- Variable metadata
- Label translations to specific languages
CrmAPI.war
This project includes all the code required to implement the CRM.COM Web API, that is, all the controller classes and Java classes required to parse the data in Web API requests and construct the data included in Web API response.
CrmEJB.jar
This project includes all files and code required to implement the Model and Controller layer.
More specifically, this project includes the Data object classes, the Business object classes, the UI (User interface) and process flow controllers.
A detailed explanation of the model layer can be found at Developing the Model layer, and a detailed explanation of the controller layer can be found at Developing the Controller layer.