Chapter 3. Project
A project is a container for asset packages (business processes, rules, work definitions, decision tables, fact models, data models, and DSLs) that lives in the Knowledge Repository. It is this container that defines the properties of the KIE Base and KIE Session that are applied to its content. In the GUI, you can edit these entities in the Project Editor.
As a project is a Maven project, it contains the Project Object Model file (pom.xml) with information on how to build the output artifact. It also contains the Module Descriptor file, kmodule.xml, that contains the KIE Base and KIE Session configuration for the assets in the project.
3.1. Creating a Project
It is possible to create a project either in the Project Authoring perspective of Business Central or using the REST API calls.
Creating a Project in Business Central
Note that only users with the admin role in Business Central can create projects.
Procedure: Using Business Central to Create a Project
- In Business Central, go to Authoring → Project Authoring.
- In the Project Explorer, select the organizational unit and the repository in which you want to create the project.
On the perspective menu, click New Item → Project.
The New Project dialog window opens.

Define the Project General Settings and Group artifact version details of the new project. These parameters are stored in the
pom.xmlMaven configuration file.See the detailed description of the parameters:
-
Project Name: name of the project (for example
MortgageProject). - Project Description: description of the project, which may be useful for the project documentation purposes.
-
Group ID: group ID of the project (for example
org.mycompany.commons). -
Artifact ID: artifact ID unique in the group (for example
myframework). Avoid using a space or any other special character that might lead to an invalid name. -
Version: version of the project (for example
2.1.1).
-
Project Name: name of the project (for example
Click Finish.
The project screen view is updated with the new project details as defined in the
pom.xmlfile. You can switch between project descriptor files and edit their content by clicking the Project Settings: Project General Settings button at the top of the project screen view.
Creating a Project Using the REST API
Note that only users with the rest-all or rest-project role can create projects.
To create a project in the repository, issue the POST REST API call. Details of the project are defined by the corresponding JSON entity.
Input parameter of the call is an Entity instance. The call returns a CreateProjectRequest instance.
Example 3.1. Creating a Project Using the Curl Utility
Example JSON entity containing details of a project to be created:
{
"name" : "MortgageProject",
"description" : null,
"groupId" : "org.mycompany.commons",
"version" : "2.1.1"
}Execute the following command:
curl -X POST 'localhost:8080/business-central/rest/repositories/REPOSITORY_NAME/projects/' -u USERNAME:PASSWORD -H 'Accept: application/json' -H 'Content-Type: application/json' -d '{"name":"MortgageProject","description":null,"groupId":"org.mycompany.commons","version":"2.1.1"}'For further information, see the Repository Calls section of the Knowledge Store REST API chapter in the Red Hat JBoss BPM Suite Development Guide.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.