
*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 > Service-Unit Project*.
If you do not see it, go into *File > New > Other...* Then, select *Service-Unit Project* 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 Usage* list, select *Consume a Petals service (or Expose it outside the bus)*.
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.1 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}
\\
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.