*Level:* Easy
*Estimated time:* 10 minutes the first time, 4 minutes then
*Expected skills:* know the basics about WSDL and XML
{info}
{column}
{column:width=350px}
{panel:title=Table of contents}{toc}{panel}
{column}
{section}
h1. Creating the Service-Unit project
h2. Getting started
Start Petals Studio.
In the menu, select *File > New > Petals Service Consumer*.
If you do not see it, go into *File > New > Other...* Then, select *Petals Service Consumer* under the *Petals* category.
\\
A wizard opens, showing three drop-down lists.
In the *Use Case* list, select *Miscellaneaous*.
In the *Petals Component* list, select *Quartz // petals-se-quartz*.
In the *Component Version* list, select the version of the Petals-SE-Quartz that you are using in Petals.
\\
In the scope of this tutorial, we are going to work with the version 1.2 of the Quartz component.
Which gives us:
!petals-studio-tuto-consumes-quartz-1.jpg!
\\
Click *Next*.
h2. Identifying the target service
The current page requires you to fill-in the base information to put in the JBI descriptor (*META-INF/jbi.xml*).
In particular, it defines the interface, service and end-point names of the service that will be invoked regularly.
!petals-studio-tuto-consumes-quartz-2.jpg!
\\
{note}
A service is identified by a triplet, interface, service and end-point names. This triplet is unique in a Petals topology.
When you consume a service, the service is selected in a set. This set is defined by the invocation properties.
If the 3 fields are set in the consume properties, then the set will contain at most 1 result (there can be only 1 service with this ID).
If 2 fields are set, then the third one is considered as a wildcard and the set will larger.
Consume possibilities are the following ones:
* By interface, service and end-point names.
* By interface and service names.
* By interface name only.
{note}
\\
This page also defines the operation to invoke and the Message Exchange Pattern (MEP).
The Message Exchange Pattern (MEP) defines the interactions between the Quartz component and the invoked service.
With this component, only operations that work with the InOnly MEP can be invoked.
\\
You can obviously fill-in these fields by hand.
However, the most efficient way is to use the [Petals Services explorer|Getting familiar with the Petals Services view] (provided it was populated).
Click *Select a service*. A selection dialog shows up, providing filtering assistance.
!petals-studio-tuto-consumes-quartz-2bis.jpg!
\\
When you have selected your service, click *OK*.
The wizard fields are filled-in automatically.
!petals-studio-tuto-consumes-quartz-3.jpg!
\\
{note}
The values for the interface, service and end-point names must match the values defined in the jbi.xml of the invoked service.
Indeed, this service must be a Petals service, and thus be described in a jbi.xml.
As a reminder, the jbi.xml values and the WSDL values (if the WSDL exists) of the invoked service must be exactly the same.
For this reason, filling-in the information by hand or modifying it is discouraged.
{note}
\\
Click *Next*.
h2. Defining the project name
This page defines the name and the location of the project that will be created.
Indeed, this wizard will result in the creation of a project containing all the required elements for a Quartz service-unit.
\\
Enter a project name for your project.
If you do not want your project to be created in the default workspace, uncheck *Use default location*.
Then click *Browse...* and select the location where the project will be created.
!petals-studio-tuto-consumes-quartz-4.jpg!
\\
{note}
Petals service-units have a naming convention.
For a service-unit which consumes (calls) a service, the convention is *su\-*_<Protocol or Technology>_*\-*_<Service name>_*\-consume*
{note}
\\
Then, click *Next*.
h2. Specifying the Quartz parameters
This page defines information which are specific to the Petals Quartz component.
There are only two parameters here:
* The first one is a [CRON expression|http://en.wikipedia.org/wiki/CRON_expression], which defines a time policies used to determine the invocation frequency.