<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://gvwiki.greenvulcano.com/gvwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=G.iannello</id>
	<title>GreenVulcano Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://gvwiki.greenvulcano.com/gvwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=G.iannello"/>
	<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Special:Contributions/G.iannello"/>
	<updated>2026-05-28T15:54:59Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.7</generator>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=3402</id>
		<title>Roadmap</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=3402"/>
		<updated>2012-09-03T13:38:50Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Version 3.4 (Q2 2013) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Road Map===&lt;br /&gt;
&lt;br /&gt;
The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Requests / Contributions from the community&lt;br /&gt;
* Specific needs of customers and developers&lt;br /&gt;
* Contributions of the partners / System Integrators&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our team adds its experience and expertise by offering innovative solutions in line with the vision that has always pushed us since our birth: simplicity and robustness.&lt;br /&gt;
&lt;br /&gt;
GreenVulcano remains thus attached to the &amp;quot;real world&amp;quot;, not in any way feeling the need to pursue or chasing at all costs the latest fashion trends of other products in the market.&lt;br /&gt;
&lt;br /&gt;
The Roadmap is updated by our software architects and checked every six months.&lt;br /&gt;
&lt;br /&gt;
===Version 3.2 (Q1 2012)===&lt;br /&gt;
&lt;br /&gt;
1) “Sub Flow” management&lt;br /&gt;
&lt;br /&gt;
2) BPEL Flows management &lt;br /&gt;
&lt;br /&gt;
3) Every-component-Wizard on [[VulCon]] designer &lt;br /&gt;
&lt;br /&gt;
4) Grafical Data Mapper&lt;br /&gt;
&lt;br /&gt;
5) Drools integration&lt;br /&gt;
&lt;br /&gt;
6) HL7 Adapter&lt;br /&gt;
&lt;br /&gt;
7) New Wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.3 (Q3 2012)===&lt;br /&gt;
&lt;br /&gt;
1) Parallel flows&lt;br /&gt;
&lt;br /&gt;
2) Grafical Try/Catch&lt;br /&gt;
&lt;br /&gt;
3) Deploy and test from VulCon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.4 (Q2 2013)===&lt;br /&gt;
&lt;br /&gt;
1) Grafical Debugger&lt;br /&gt;
&lt;br /&gt;
2) Service High availability and GV propietary cluster management implementation (currently managed by application server)&lt;br /&gt;
&lt;br /&gt;
3) EJB 3.0 and Spring based version release&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVCoreEJBClientExamples&amp;diff=3399</id>
		<title>GVCoreEJBClientExamples</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVCoreEJBClientExamples&amp;diff=3399"/>
		<updated>2012-08-03T15:04:56Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In the Client package are provided two sample applications:&lt;br /&gt;
* a stand alone java class&lt;br /&gt;
* a Tomcat web application&lt;br /&gt;
&lt;br /&gt;
For each example is provided an Ant build script to automate the compilation and packaging. &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
The stand alone java class is in the examples/client folder and illustrates the invocation of synchronous/asynchronous services.&amp;lt;br/&amp;gt;&lt;br /&gt;
The &amp;quot;ant test&amp;quot; task compiles and runs the client test.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
The Tomcat web application builds a .war file that can be deployed on a Tomcat web server.&amp;lt;br/&amp;gt;&lt;br /&gt;
At the url http://localhost:8080/testgvc/index.jsp can be used a HTML page that allows you to set the parameters to invoke a {{GVESB}} service.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Core_EJB_Client&amp;diff=3398</id>
		<title>Core EJB Client</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Core_EJB_Client&amp;diff=3398"/>
		<updated>2012-08-03T15:03:50Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Core EJB Client is a simple utility that enable a class to invoke {{GVESB}} services through the Core EJB Adapter. The Client uses a properties file containing the parameters to connect to the (remote) {{GVESB}} server JNDI tree.&lt;br /&gt;
&lt;br /&gt;
The client interface is [[GVCoreEJBClient]] class.&lt;br /&gt;
&lt;br /&gt;
The properties file, ex. jndi.properties, must be configured through the following system property: -Dit.greenvulcano.gvesb.core.ejb.client.jndi=&amp;quot;path to /jndi.properties&amp;quot;&amp;lt;br/&amp;gt;&lt;br /&gt;
The file is polled for change every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
From [http://commons.apache.org/ognl/language-guide.html here] the client package can be downloaded.&lt;br /&gt;
&lt;br /&gt;
The package contains the following directories:&lt;br /&gt;
* lib : the client and GV support libraries&lt;br /&gt;
* extra-lib : JBoss 5.1 client libraries&lt;br /&gt;
* [[GVCoreEJBClientExamples|examples]]  : stand-alone and Tomcat web application examples&lt;br /&gt;
&lt;br /&gt;
For each example an Ant build script to automate the compilation and packaging is provided.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Client&amp;diff=2802</id>
		<title>Client</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Client&amp;diff=2802"/>
		<updated>2012-03-01T15:51:29Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
Defines a service client. Before you can designate a system as a &amp;quot;client of a service&amp;quot;, you must configure the [[system]] in the Systems section.&lt;br /&gt;
&lt;br /&gt;
Note that client means &amp;quot;the system used by field 'system' of [[GVBuffer]]&amp;quot; (the data buffer for {{GVESB}}), and this value can be used in flows routing conditions.&lt;br /&gt;
&lt;br /&gt;
This field contains the name of the client system that began the transaction. Even in the delivery of responses by server systems (Call-Back), this field will contain the name of the client that made the request.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Installer_Overview&amp;diff=2637</id>
		<title>Installer Overview</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Installer_Overview&amp;diff=2637"/>
		<updated>2012-02-23T17:24:36Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The installer allows you to run in two different modes:&lt;br /&gt;
&lt;br /&gt;
# GUI mode&lt;br /&gt;
# Console mode&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''GUI mode'''&lt;br /&gt;
&lt;br /&gt;
In GUI mode, the installer presents a wizard that allows you to make your choices about product configuration and component selection.&amp;lt;br/&amp;gt;&lt;br /&gt;
When you start the installer by simply execute it, GUI mode is used.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Console mode'''&lt;br /&gt;
&lt;br /&gt;
Console mode allows you to run the installer from a command line.&amp;lt;br/&amp;gt;&lt;br /&gt;
It is useful on system where a graphic environment is not available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Required and Optional Third Party Components'''&lt;br /&gt;
&lt;br /&gt;
Depending on the tasks you wish to perform, you must install one or more other third party components.&lt;br /&gt;
&lt;br /&gt;
''Required and Optional Components''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Component  &lt;br /&gt;
! Purpose&lt;br /&gt;
|-&lt;br /&gt;
| Oracle JDK 1.6.0 or higher&lt;br /&gt;
| Required.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt; Oracle JDK 1.6.0 is required to start the GreenVulcano Universal Installer.&lt;br /&gt;
|-&lt;br /&gt;
| JBoss 5.1.0 GA&lt;br /&gt;
| Optional.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt; JBoss 5.1.0 GA Application Server is part of the installation process &amp;lt;br/&amp;gt;but you can choose to not install it using your already existing  installtion.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Please note that different versions are not supported and the installer will exit.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''GreenVulcano Universal Installer'''&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} is based on  GreenVulcano Universal Installer 1.0.0 which supports multiple GV_HOME installation on a system and will have a screen asking whether to use a new or an existing JBoss 5.1.0 GA installation.&amp;lt;br/&amp;gt;&lt;br /&gt;
When installing {{GVESB}}, you should always use the same JBoss 5.1.0 GA installation simply choosing &amp;quot;Custom Installation&amp;quot; deselecting the &amp;quot;JBoss AS 5.1.0.GA&amp;quot; package and selecting your JBOSS_HOME when asked.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Available Installation Options'''&lt;br /&gt;
&lt;br /&gt;
Running the GreenVulcano Universal Installer the following options are available for certain platforms in both Console and GUI mode:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Platform  &lt;br /&gt;
! Options &lt;br /&gt;
! Purpose&lt;br /&gt;
|-&lt;br /&gt;
| Linux x86&lt;br /&gt;
| -java-home&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;-console&amp;lt;br/&amp;gt;&lt;br /&gt;
| JRE directory which point to desired bin/java executable.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Run the installer in console mode.&lt;br /&gt;
|-&lt;br /&gt;
| Linux x86-64&lt;br /&gt;
| -java-home&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;-console&amp;lt;br/&amp;gt;&lt;br /&gt;
| JRE directory which point to desired bin/java executable.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Run the installer in console mode.&lt;br /&gt;
|-&lt;br /&gt;
| Solaris (SPARC) (64-bit)&lt;br /&gt;
| -java-home&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;-console&amp;lt;br/&amp;gt;&lt;br /&gt;
| JRE directory which point to desired bin/java executable.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Run the installer in console mode.&lt;br /&gt;
|-&lt;br /&gt;
| Solaris (x86-64)&lt;br /&gt;
| -java-home&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;-console&amp;lt;br/&amp;gt;&lt;br /&gt;
| JRE directory which point to desired bin/java executable.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Run the installer in console mode.&lt;br /&gt;
|-&lt;br /&gt;
| IBM AIX (PPC64)&lt;br /&gt;
| -java-home&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;-console&amp;lt;br/&amp;gt;&lt;br /&gt;
| JRE directory which point to desired bin/java executable.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Run the installer in console mode.&lt;br /&gt;
|-&lt;br /&gt;
| Microsoft Windows (all)&lt;br /&gt;
| no options&lt;br /&gt;
| The installer is available only in GUI mode without specifying any options.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Uninstalling GreenVulcano ESB'''&lt;br /&gt;
&lt;br /&gt;
To uninstall your {{GVESB}} you can simply navigate through the Uninstaller directory located under your GV_HOME path and invoke:&amp;lt;br/&amp;gt; &lt;br /&gt;
 ''java -jar GreenVulcano_Uninstaller.jar''&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In case you have multiple GV_HOME on your system in the same INSTALL_PATH that sharing the same JBoss 5.1.0 GA installation please leave the ''&amp;quot;Force deletion of&amp;quot;'' checkbox unselected.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The ''&amp;quot;Force deletion of&amp;quot;'' checkbox if selected will remove all the files and directories under your INSTALL_PATH.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER_A&amp;diff=2452</id>
		<title>GVExample TOUPPER A</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER_A&amp;diff=2452"/>
		<updated>2012-02-20T11:45:02Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
This simple example shows how to configure an asynchronous service with a [[GVForwards|JMS Forward]] . &lt;br /&gt;
The Service TOUPPER_A is composed of three workflows that define the Client/ESB/Server interaction:&lt;br /&gt;
# the Client invokes the ''Request'' workflow to enqueue the input data into a request queue&lt;br /&gt;
# the [[GVForwards|JMS Forward]] (a {{GVESB}} component), listening on the request queue, extracts the JMS message and invokes the ''FWD_TOUPPER_A'' workflow that converts the payload to uppercase (simulate a Server invocation) then enqueues the new payload into a response queue&lt;br /&gt;
# the Client invokes the ''getReply'' workflow to dequeue the output data from a response queue&lt;br /&gt;
&lt;br /&gt;
==How To==&lt;br /&gt;
&lt;br /&gt;
The preferred mode for creating a Service (at least its skeleton) is through the Service Wizard. Before using it you must first configure the JMS Queue and the VCL plugins to interact with the JMS queue and execute the uppercase conversion. So let's define a new Group, System and Channel, if you do not want to use those already present, and then start the Wizard. &lt;br /&gt;
&lt;br /&gt;
===Configuring JMS queues in JBoss===&lt;br /&gt;
&lt;br /&gt;
The JMS queues are configured in JBoss by an XML file, ''gvesb-mq-destinations-service.xml'' present in &amp;lt;nowiki&amp;gt;$GV_HOME&amp;lt;/nowiki&amp;gt;/application/deploy.&lt;br /&gt;
&lt;br /&gt;
A queue has:&lt;br /&gt;
* A name that serves to identify it to JBoss.&lt;br /&gt;
* A JNDI Name used by a client to connect to the queue.&lt;br /&gt;
* MaxDeliveryAttempts (optional), to indicate how many times a message is put back into the queue for processing if the application does not confirm its reading.&lt;br /&gt;
* RedeliveryDelay (optional), to indicate the delay (in ms) after a message will be put back into the queue if the application does not confirm its reading.&lt;br /&gt;
&lt;br /&gt;
The JndiName can be checked using the JBoss's jmx-console to find the MBean &amp;quot;service=JNDIView&amp;quot;.&lt;br /&gt;
 &lt;br /&gt;
In this example we use 2 queues:&lt;br /&gt;
* ''TOUPPER_A_Request_Queue''&lt;br /&gt;
* ''TOUPPER_A_Response_Queue''&lt;br /&gt;
&lt;br /&gt;
To configure both queues go to the configuration file and insert the following MBean definitions:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;mbean code=&amp;quot;org.jboss.jms.server.destination.QueueService&amp;quot;&lt;br /&gt;
           name=&amp;quot;jboss.messaging.destination:service=Queue,name=TOUPPER_A_Request_Queue&amp;quot;&lt;br /&gt;
           xmbean-dd=&amp;quot;xmdesc/Queue-xmbean.xml&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;depends optional-attribute-name=&amp;quot;ServerPeer&amp;quot;&amp;gt;jboss.messaging:service=ServerPeer&amp;lt;/depends&amp;gt;&lt;br /&gt;
    &amp;lt;depends&amp;gt;jboss.messaging:service=PostOffice&amp;lt;/depends&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;JNDIName&amp;quot;&amp;gt;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;lt;/attribute&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;RedeliveryDelay&amp;quot;&amp;gt;60000&amp;lt;/attribute&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;MaxDeliveryAttempts&amp;quot;&amp;gt;100&amp;lt;/attribute&amp;gt;&lt;br /&gt;
&amp;lt;/mbean&amp;gt;&lt;br /&gt;
&amp;lt;mbean code=&amp;quot;org.jboss.jms.server.destination.QueueService&amp;quot;&lt;br /&gt;
           name=&amp;quot;jboss.messaging.destination:service=Queue,name=TOUPPER_A_Response_Queue&amp;quot;&lt;br /&gt;
           xmbean-dd=&amp;quot;xmdesc/Queue-xmbean.xml&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;depends optional-attribute-name=&amp;quot;ServerPeer&amp;quot;&amp;gt;jboss.messaging:service=ServerPeer&amp;lt;/depends&amp;gt;&lt;br /&gt;
    &amp;lt;depends&amp;gt;jboss.messaging:service=PostOffice&amp;lt;/depends&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;JNDIName&amp;quot;&amp;gt;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;lt;/attribute&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;RedeliveryDelay&amp;quot;&amp;gt;60000&amp;lt;/attribute&amp;gt;&lt;br /&gt;
    &amp;lt;attribute name=&amp;quot;MaxDeliveryAttempts&amp;quot;&amp;gt;100&amp;lt;/attribute&amp;gt;&lt;br /&gt;
&amp;lt;/mbean&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Defining Group, System and Channel===&lt;br /&gt;
&lt;br /&gt;
From the core view:&lt;br /&gt;
# Right click the element Groups -&amp;gt; Insert after (or Insert before) -&amp;gt; Group. A new element Group will be created. &lt;br /&gt;
# Click on the Group new element and set the attribute ''id-group'' from the Properties View. We named it DEFAULT_GRP&lt;br /&gt;
# Expand the GVSystems item.&lt;br /&gt;
# Right clicking on Systems, insert-after -&amp;gt; System. A new element System will be created.&lt;br /&gt;
# Set the [[System]] parameters in the [[VulCon_perspective|Properties panel]]. We named it GVESB_TEST&lt;br /&gt;
# You can insert a new [[Channel]] right clicking the new [[System]] element -&amp;gt; Insert after (or Insert before) -&amp;gt; Channel*. A new Channel element will be created&lt;br /&gt;
# Click on this new Channel element and set the property ''id_channel''. We named it TEST_CHANNEL_A&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Defining Workflow Operations===&lt;br /&gt;
&lt;br /&gt;
Once you have created the [[Channel]], insert into the operations you need for the workflow. In this case:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Plugin !! Value&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-enqueue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-enqueue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;delivery-mode=&amp;quot;persistent&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-dequeue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;delivery-mode=&amp;quot;persistent&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;ReadString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt; receive-type=&amp;quot;timeout&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[test-service-call]] || name=&amp;quot;toupper_call&amp;quot; service=&amp;quot;toupper&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The ''WriteString_JMSBytesMessageDataProvider'' creates a JMS BytesMessage and write in its body the expected input java.lang.String converted to byte[].&amp;lt;br/&amp;gt;The ''ReadString_JMSBytesMessageDataProvider'' extract the input JMS BytesMessage body as byte[] then convert it into a java.lang.String.&amp;lt;br/&amp;gt;Check that [[Data provider|Data Providers]] ''WriteString_JMSBytesMessageDataProvider'' and ''ReadString_JMSBytesMessageDataProvider'' will be present in the element DataProviders (JMSBytesMessageDataProvider and StringDataProvider respectively), visualized from the {{VULCON}} Adapter view. If don't, you can add it setting their attributes as seen in the following table:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Data Provider !! Value&lt;br /&gt;
|-&lt;br /&gt;
| [[Data provider|JMSBytesMessageDataProvider]] || name=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;Field:&lt;br /&gt;
: direction=&amp;quot;OUT&amp;quot; key=&amp;quot;output&amp;quot; type=&amp;quot;field&amp;quot;&amp;gt;&lt;br /&gt;
: Expression: type=&amp;quot;ognl&amp;quot;&lt;br /&gt;
:: writeBytes(#input.object.getBytes('UTF-8'))&lt;br /&gt;
|-&lt;br /&gt;
| [[Data provider|StringDataProvider]] || name=&amp;quot;ReadString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;Field:&lt;br /&gt;
: direction=&amp;quot;INOUT&amp;quot; key=&amp;quot;buffer&amp;quot; type=&amp;quot;field&amp;quot;&lt;br /&gt;
: Expression: type=&amp;quot;ognl&amp;quot;&lt;br /&gt;
:: #bArr = new byte[object.getBodyLength()], object.reset(), object.readBytes(#bArr), new java.lang.String(#bArr, 'UTF-8')&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:NewServiceWizard.jpg|thumb|New {{GVESB}} Service Wizard]]Now we are able to use the Wizard.&lt;br /&gt;
# From the Core View of {{VULCON}}. Right click the element Services -&amp;gt; Wizard New Service&lt;br /&gt;
# A new windows will be open where you can set the name of the Service you want to create, in this case we named TOUPPER_A, and your Group, we used DEFAULT_GRP. You can also select the paradigm, for this example will be [[Paradigms_of_communication#asynchronous-synchronous|asynchronous-synchronous]]. Click next.&lt;br /&gt;
# Set System as GVESB_TEST and Channel as TEST_CHANNEL_A. Then chose as Request Operation ''JMSEnqueueTo::TOUPPER_A_Req'', and the response Operation ''toupper_call''. Then finish.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER_AEditor.jpg |thumb |TOUPPER_A flow]]As you can see from the core view, inside the Services element, a new Service named TOUPPER_A has been created.&amp;lt;br/&amp;gt;This service contains three Operations (Workflows)&lt;br /&gt;
We setted the first one as a Request (to enqueue), and the second as a GetReply (to dequeue).&lt;br /&gt;
Nodes will be setted as seen in the following table:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Node !! Request !! GetReply&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || output: output_JMSEnqueueTo::TOUPPER_A_Req&amp;lt;br/&amp;gt;id=&amp;quot;request&amp;quot;&amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB_TEST&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;input_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;enqueue&amp;quot;&amp;lt;br/&amp;gt;operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || output: &amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;request&amp;quot;&amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB_TEST&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;input_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;dequeue&amp;quot;&amp;lt;br/&amp;gt;operation-name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;DequeueFilter:&lt;br /&gt;
: IDFilter&lt;br /&gt;
:: enabled=&amp;quot;yes&amp;quot; use-input=&amp;quot;yes&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;check_status&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;on-exception-id=&amp;quot;return_error&amp;quot;&amp;lt;br/&amp;gt;op-type=&amp;quot;check&amp;quot; || default-id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;check_status&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;on-exception-id=&amp;quot;return_error&amp;quot;&amp;lt;br/&amp;gt;op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;op-type=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;op-type=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;return_error&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || id=&amp;quot;return_error&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot; &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
Operation FWD_TOUPPER_A will be configured as follow:&lt;br /&gt;
Attributes: name=&amp;quot;Forward&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;none&amp;quot;&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Nodes/Subelements !! Attributes&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || id-system=&amp;quot;GVESB&amp;quot;&amp;lt;br/&amp;gt;  input=&amp;quot;input&amp;quot;&amp;lt;br/&amp;gt; next-node-id=&amp;quot;enqueue_response&amp;quot; op-type=&amp;quot;call&amp;quot;&amp;lt;br/&amp;gt;  operation-name=&amp;quot;toupper_call&amp;quot; output=&amp;quot;output&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || id=&amp;quot;enqueue_response&amp;quot; id-system=&amp;quot;GVESB&amp;quot;&amp;lt;br/&amp;gt;  input=&amp;quot;output&amp;quot; next-node-id=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt; op-type=&amp;quot;enqueue&amp;quot;&amp;lt;br/&amp;gt; operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;  output=&amp;quot;output&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;no&amp;quot; id=&amp;quot;end&amp;quot; op-type=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;  output=&amp;quot;output&amp;quot; &amp;lt;br/&amp;gt; ChangeGVBuffer: clear-data=&amp;quot;true&amp;quot;&lt;br /&gt;
|}                      &lt;br /&gt;
&lt;br /&gt;
The GVCore.xml configuration file will be changed as follow:&lt;br /&gt;
* Into ''GVForwards'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ForwardConfiguration dump-message=&amp;quot;true&amp;quot; enabled=&amp;quot;true&amp;quot;&lt;br /&gt;
                      forwardName=&amp;quot;FWD_TOUPPER_A&amp;quot;&lt;br /&gt;
                      ref-dp=&amp;quot;ReadString_JMSBytesMessageDataProvider&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;ForwardDeployment connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                       destination=&amp;quot;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;quot;&lt;br /&gt;
                       destination-type=&amp;quot;queue&amp;quot; reconnect-interval-sec=&amp;quot;10&amp;quot;&lt;br /&gt;
                       transacted=&amp;quot;true&amp;quot; transaction-timeout-sec=&amp;quot;30&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/ForwardDeployment&amp;gt;&lt;br /&gt;
&amp;lt;/ForwardConfiguration&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Into ''Services'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;DEFAULT_GRP&amp;quot; id-service=&amp;quot;TOUPPER_A&amp;quot;&lt;br /&gt;
         service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Operation name=&amp;quot;Request&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
               out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                               id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                               input=&amp;quot;input_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                               next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;enqueue&amp;quot;&lt;br /&gt;
                               operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                               output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                               point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                           default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                           input=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                           on-exception-id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
                           point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                         id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                         output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                         point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                         id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                         output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                         point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;300&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/Flow&amp;gt;&lt;br /&gt;
     &amp;lt;/Operation&amp;gt;&lt;br /&gt;
     &amp;lt;Operation name=&amp;quot;GetReply&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
             &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                              id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                              input=&amp;quot;input_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                              next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;dequeue&amp;quot;&lt;br /&gt;
                              operation-name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                              output=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                              point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;DequeueFilter&amp;gt;&lt;br /&gt;
                            &amp;lt;IDFilter enabled=&amp;quot;yes&amp;quot; name=&amp;quot;IDFilter&amp;quot; type=&amp;quot;filter&amp;quot;&lt;br /&gt;
                                      use-input=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/DequeueFilter&amp;gt;&lt;br /&gt;
             &amp;lt;/GVOperationNode&amp;gt;&lt;br /&gt;
             &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                          default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                          input=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot; &lt;br /&gt;
                          on-exception-id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
                          point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                        id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_null&amp;quot;&lt;br /&gt;
                        point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                        id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                        output=&amp;quot;output_JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                        point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;300&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/Flow&amp;gt;&lt;br /&gt;
    &amp;lt;/Operation&amp;gt;&lt;br /&gt;
    &amp;lt;Operation forward-name=&amp;quot;FWD_TOUPPER_A&amp;quot; name=&amp;quot;Forward&amp;quot;&lt;br /&gt;
               operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;none&amp;quot;&lt;br /&gt;
               type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;call_server&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                               id=&amp;quot;call_server&amp;quot; id-system=&amp;quot;GVESB&amp;quot; input=&amp;quot;input&amp;quot;&lt;br /&gt;
                               next-node-id=&amp;quot;enqueue_response&amp;quot; op-type=&amp;quot;call&amp;quot;&lt;br /&gt;
                               operation-name=&amp;quot;toupper_call&amp;quot; output=&amp;quot;output&amp;quot;&lt;br /&gt;
                               point-x=&amp;quot;147&amp;quot; point-y=&amp;quot;148&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                               id=&amp;quot;enqueue_response&amp;quot; id-system=&amp;quot;GVESB&amp;quot;&lt;br /&gt;
                               input=&amp;quot;output&amp;quot; next-node-id=&amp;quot;end&amp;quot;&lt;br /&gt;
                               op-type=&amp;quot;enqueue&amp;quot;&lt;br /&gt;
                               operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                               output=&amp;quot;output&amp;quot; point-x=&amp;quot;319&amp;quot; point-y=&amp;quot;152&amp;quot;&lt;br /&gt;
                               type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                         end-business-process=&amp;quot;no&amp;quot; id=&amp;quot;end&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                         output=&amp;quot;output&amp;quot; point-x=&amp;quot;532&amp;quot; point-y=&amp;quot;149&amp;quot;&lt;br /&gt;
                         type=&amp;quot;flow-node&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;ChangeGVBuffer clear-data=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;/GVEndNode&amp;gt;&lt;br /&gt;
         &amp;lt;/Flow&amp;gt;&lt;br /&gt;
    &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Into ''System'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Channel id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;jms-enqueue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                       class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSEnqueueOperation&amp;quot;&lt;br /&gt;
                       connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                       delivery-mode=&amp;quot;persistent&amp;quot;&lt;br /&gt;
                       destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;quot;&lt;br /&gt;
                       destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                       name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot; priority=&amp;quot;4&amp;quot;&lt;br /&gt;
                       ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&lt;br /&gt;
                       transacted=&amp;quot;false&amp;quot; type=&amp;quot;enqueue&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/jms-enqueue&amp;gt;&lt;br /&gt;
          &amp;lt;jms-enqueue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                       class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSEnqueueOperation&amp;quot;&lt;br /&gt;
                       connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                       delivery-mode=&amp;quot;persistent&amp;quot;&lt;br /&gt;
                       destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&lt;br /&gt;
                       destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                       name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot; priority=&amp;quot;4&amp;quot;&lt;br /&gt;
                       transacted=&amp;quot;false&amp;quot; type=&amp;quot;enqueue&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/jms-enqueue&amp;gt;&lt;br /&gt;
          &amp;lt;jms-dequeue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                       class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSDequeueOperation&amp;quot;&lt;br /&gt;
                       connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                       destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&lt;br /&gt;
                       destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                       name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                       receive-timeout-overridable=&amp;quot;false&amp;quot;&lt;br /&gt;
                       receive-type=&amp;quot;timeout&amp;quot; transacted=&amp;quot;false&amp;quot; type=&amp;quot;dequeue&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
           &amp;lt;/jms-dequeue&amp;gt;&lt;br /&gt;
           &amp;lt;test-service-call class=&amp;quot;it.greenvulcano.gvesb.virtual.internal.TestServiceCall&amp;quot;&lt;br /&gt;
                              name=&amp;quot;toupper_call&amp;quot; service=&amp;quot;toupper&amp;quot; type=&amp;quot;call&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/Channel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are able to test your first {{VULCON}} service from the {{L_GVCONSOLE}}. But first you need to export the configuration.&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER5.jpg|thumb|Exporting configuration]]Once the flow is correctly configured, the user can export the configuration and pass it to the {{GVESB}} import tool, in order to add into the {{GVESB}} the service just created.&lt;br /&gt;
&lt;br /&gt;
# The Export function is available in the view &amp;quot;Project&amp;quot;. Expand the project&lt;br /&gt;
# Before you proceed press F5 to refresh the file list.&lt;br /&gt;
# Right click the ''conf'' folder. It will open a drop-down list. &lt;br /&gt;
# Export your project as a compressed file.&lt;br /&gt;
&lt;br /&gt;
===Testing with {{GVCONSOLE}}===&lt;br /&gt;
&lt;br /&gt;
It is finally the time to test your project. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} project as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Browse and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
# Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TOUPPER_A a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and GVAdapter.xml, then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new service. Remember that Service TOUPPER_A is composed by three independent Operations:&lt;br /&gt;
&lt;br /&gt;
'''Request'''&lt;br /&gt;
# Into the Service field select TOUPPER_A&lt;br /&gt;
# Into the System field select GVESB_TEST&lt;br /&gt;
# Into the Payload area insert the text to convert in uppercase&lt;br /&gt;
# Click Request&lt;br /&gt;
&lt;br /&gt;
The '''FWD_TOUPPER_A''' is executed by {{GVESB}} [[GVForwards|JMS Forward]].&lt;br /&gt;
&lt;br /&gt;
'''getReply'''&lt;br /&gt;
# Clear the Payload area&lt;br /&gt;
# Click getReply&lt;br /&gt;
&lt;br /&gt;
When each test completes, the Testing view will be expanded for containing the GVBUFFER OUTPUT. In this case no properties have been defined so there are only be presents the main informations about the process (System, Service, Id, etc.). To view the service payload output click on ''Show as Text'' button. Standard fields and the detailed GVBuffer are described in the [[Testing#Data_input|Output File Name]] (the default location is &amp;lt;nowiki&amp;gt;$GV_HOME&amp;lt;/nowiki&amp;gt;/log/TestOutput.txt). &lt;br /&gt;
&lt;br /&gt;
In case of error or exceptions you can review the logs file present in the folder &amp;lt;nowiki&amp;gt;$GV_HOME&amp;lt;/nowiki&amp;gt;/log/.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER_A&amp;diff=2399</id>
		<title>GVExample TOUPPER A</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER_A&amp;diff=2399"/>
		<updated>2012-02-17T16:10:47Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
This simple example shows how to configure an asynchronous service with Forward JMS.&lt;br /&gt;
&lt;br /&gt;
==How To==&lt;br /&gt;
&lt;br /&gt;
The best mode for creating a [[Service]] is through the Wizard. But for use it you must first define a new [[Group]], [[System]] and [[Channel]], if you do not want to use those already presents, and the workflow operations.&lt;br /&gt;
&lt;br /&gt;
===Defining Group, System and Channel===&lt;br /&gt;
&lt;br /&gt;
From the core view:&lt;br /&gt;
# Right click the element Groups -&amp;gt; Insert after (or Insert before) -&amp;gt; Group. A new element Group will be created. &lt;br /&gt;
# Click on the Group new element and set the attribute ''id-group'' from the Properties View. We named it DEFAULT_GRP&lt;br /&gt;
# Expand the GVSystems item.&lt;br /&gt;
# Right clicking on Systems, insert-after -&amp;gt; System. A new element System will be created.&lt;br /&gt;
# Set the [[System]] parameters in the [[VulCon_perspective|Properties panel]]. We named it GVESB_TEST&lt;br /&gt;
# You can insert a new [[Channel]] right clicking the new [[System]] element -&amp;gt; Insert after (or Insert before) -&amp;gt; Channel*. A new Channel element will be created&lt;br /&gt;
# Click on this new Channel element and set the property ''id_channel''. We named it TEST_CHANNEL_A&lt;br /&gt;
&lt;br /&gt;
===Defining Workflow Operations===&lt;br /&gt;
&lt;br /&gt;
Once you have created the [[Channel]], insert into the operations you need for the workflow. In this case:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Plugin !! Value&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-enqueue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-enqueue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;delivery-mode=&amp;quot;persistent&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[jms-dequeue]] || connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&amp;lt;br/&amp;gt;delivery-mode=&amp;quot;persistent&amp;quot;&amp;lt;br/&amp;gt;destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&amp;lt;br/&amp;gt;name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&amp;lt;br/&amp;gt;                            ref-dp=&amp;quot;ReadString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt; receive-type=&amp;quot;timeout&amp;quot;&amp;lt;br/&amp;gt;XAHelper&lt;br /&gt;
: auto-enlist=&amp;quot;false&amp;quot;&lt;br /&gt;
: transaction-status=&amp;quot;TMSUCCESS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[test-service-call]] || name=&amp;quot;toupper_call&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Check that [[Data provider|Data Providers]] ''WriteString_JMSBytesMessageDataProvider'' and ''ReadString_JMSBytesMessageDataProvider'' will be present in the element DataProviders (JMSBytesMessageDataProvider and StringDataProvider respectively), visualized from the {{VULCON}} Adapter view. If don't you can add it setting their attributes as seen in the following table:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Data Provider !! Value&lt;br /&gt;
|-&lt;br /&gt;
| [[Data provider|JMSBytesMessageDataProvider]] || name=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;Field:&lt;br /&gt;
: direction=&amp;quot;OUT&amp;quot; key=&amp;quot;output&amp;quot; type=&amp;quot;field&amp;quot;&amp;gt;&lt;br /&gt;
: Expression: type=&amp;quot;ognl&amp;quot;&lt;br /&gt;
:: writeBytes(#input.object.getBytes('UTF-8'))&lt;br /&gt;
|-&lt;br /&gt;
| [[Data provider|StringDataProvider]] || name=&amp;quot;ReadString_JMSBytesMessageDataProvider&amp;quot;&amp;lt;br/&amp;gt;Field:&lt;br /&gt;
: direction=&amp;quot;INOUT&amp;quot; key=&amp;quot;buffer&amp;quot; type=&amp;quot;field&amp;quot;&lt;br /&gt;
: Expression: type=&amp;quot;ognl&amp;quot;&lt;br /&gt;
:: #bArr = new byte[object.getBodyLength()], object.reset(), object.readBytes(#bArr), new java.lang.String(#bArr, 'UTF-8')&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:NewServiceWizard.jpg|thumb|New {{GVESB}} Service Wizard]]Now we are able to use the Wizard.&lt;br /&gt;
# From the Core View of {{VULCON}}. Right click the element Services -&amp;gt; Wizard New Service&lt;br /&gt;
# A new windows will be open where you can set the name of the Service you want to create, in this case we named TOUPPER_A, and your Group, we used DEFAULT_GRP. You can also select the paradigm, for this example will be [[Paradigms_of_communication#asynchronous-asynchronous|asynchronous-asynchronous]]. Click next.&lt;br /&gt;
# Set System as GVESB_TEST and Channel as TEST_CHANNEL_A. Then chose as Request Operation ''JMSEnqueueTo::TOUPPER_A_Req'', and the response Operation ''toupper_call''. Then finish.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER_AEditor.jpg |thumb |TOUPPER_A flow]]As you can see from the core view, inside the Services element, a new Service named TOUPPER_A has been created. This service contains two Operations: &lt;br /&gt;
We setted the first one as a Request (to enqueue), and the second as a GetReply (to dequeue).&lt;br /&gt;
Nodes will be setted as seen in the following table:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Node !! Request !! GetReply&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || output: output_JMSEnqueueTo::TOUPPER_A_Req&amp;lt;br/&amp;gt;id=&amp;quot;request&amp;quot;&amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB_TEST&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;input_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;enqueue&amp;quot;&amp;lt;br/&amp;gt;operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || output: &amp;quot;output_null&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;request&amp;quot;&amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB_TEST&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;input_null&amp;quot;&amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;dequeue&amp;quot;&amp;lt;br/&amp;gt;operation-name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;check_status&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&amp;lt;br/&amp;gt;on-exception-id=&amp;quot;return_error&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;check&amp;quot; || default-id=&amp;quot;return_status&amp;quot;&amp;lt;br/&amp;gt;id=&amp;quot;check_status&amp;quot;&amp;lt;br/&amp;gt;input=&amp;quot;output_null&amp;quot;&amp;lt;br/&amp;gt;&lt;br /&gt;
on-exception-id=&amp;quot;return_error&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;return_status&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || id=&amp;quot;return_status&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
op-type=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;output=&amp;quot;output_null&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;return_error&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot; || id=&amp;quot;return_error&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;output_null&amp;quot; &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The GVCore.xml configuration file will be changed as follow:&lt;br /&gt;
* Into ''Services'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;DEFAULT_GRP&amp;quot; id-service=&amp;quot;TOUPPER_A&amp;quot;&lt;br /&gt;
        service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Operation name=&amp;quot;Request&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
            out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                                         id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                                         input=&amp;quot;input_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                         next-node-id=&amp;quot;check_status&amp;quot; op-type=&amp;quot;enqueue&amp;quot;&lt;br /&gt;
                                         operation-name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                         output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                         point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                                     default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                                     input=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                     on-exception-id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
                                     point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                                   id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                                   output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                                   id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                                   output=&amp;quot;output_JMSEnqueueTo::TOUPPER_A_Req&amp;quot;&lt;br /&gt;
                                   point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;300&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/Flow&amp;gt;&lt;br /&gt;
     &amp;lt;/Operation&amp;gt;&lt;br /&gt;
     &amp;lt;Operation name=&amp;quot;GetReply&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                           out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
             &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                                   id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                                   input=&amp;quot;input_null&amp;quot; next-node-id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                                   op-type=&amp;quot;dequeue&amp;quot;&lt;br /&gt;
                                   operation-name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                                   output=&amp;quot;output_null&amp;quot; point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                                   default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                                   input=&amp;quot;output_null&amp;quot; on-exception-id=&amp;quot;return_error&amp;quot;&lt;br /&gt;
                                   op-type=&amp;quot;check&amp;quot; point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                                   id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_null&amp;quot;&lt;br /&gt;
                                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;150&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
             &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                                   id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_null&amp;quot;&lt;br /&gt;
                                   point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;300&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/Flow&amp;gt;&lt;br /&gt;
    &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Into ''System'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Channel id-channel=&amp;quot;TEST_CHANNEL_A&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;jms-enqueue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                                 class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSEnqueueOperation&amp;quot;&lt;br /&gt;
                                 connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                                 delivery-mode=&amp;quot;persistent&amp;quot;&lt;br /&gt;
                                 destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Request_Queue&amp;quot;&lt;br /&gt;
                                 destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                                 name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Req&amp;quot; priority=&amp;quot;4&amp;quot;&lt;br /&gt;
                                 ref-dp=&amp;quot;WriteString_JMSBytesMessageDataProvider&amp;quot;&lt;br /&gt;
                                 transacted=&amp;quot;false&amp;quot; type=&amp;quot;enqueue&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/jms-enqueue&amp;gt;&lt;br /&gt;
          &amp;lt;jms-enqueue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                                 class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSEnqueueOperation&amp;quot;&lt;br /&gt;
                                 connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                                 delivery-mode=&amp;quot;persistent&amp;quot;&lt;br /&gt;
                                 destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&lt;br /&gt;
                                 destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                                 name=&amp;quot;JMSEnqueueTo::TOUPPER_A_Resp&amp;quot; priority=&amp;quot;4&amp;quot;&lt;br /&gt;
                                 transacted=&amp;quot;false&amp;quot; type=&amp;quot;enqueue&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/jms-enqueue&amp;gt;&lt;br /&gt;
          &amp;lt;jms-dequeue acknowledge-type=&amp;quot;auto-acknowledge&amp;quot;&lt;br /&gt;
                                 class=&amp;quot;it.greenvulcano.gvesb.virtual.j2ee.JMSDequeueOperation&amp;quot;&lt;br /&gt;
                                 connection-factory=&amp;quot;java:/XAConnectionFactory&amp;quot;&lt;br /&gt;
                                 destination-name=&amp;quot;gvesb/jms/queue/TOUPPER_A_Response_Queue&amp;quot;&lt;br /&gt;
                                 destination-type=&amp;quot;queue&amp;quot;&lt;br /&gt;
                                 name=&amp;quot;JMSDequeueTo::TOUPPER_A_Resp&amp;quot;&lt;br /&gt;
                                 receive-timeout-overridable=&amp;quot;false&amp;quot;&lt;br /&gt;
                                 receive-type=&amp;quot;timeout&amp;quot; transacted=&amp;quot;false&amp;quot; type=&amp;quot;dequeue&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;XAHelper auto-enlist=&amp;quot;false&amp;quot; transaction-status=&amp;quot;TMSUCCESS&amp;quot;/&amp;gt;&lt;br /&gt;
           &amp;lt;/jms-dequeue&amp;gt;&lt;br /&gt;
           &amp;lt;test-service-call class=&amp;quot;it.greenvulcano.gvesb.virtual.internal.TestServiceCall&amp;quot;&lt;br /&gt;
                                       name=&amp;quot;toupper_call&amp;quot; service=&amp;quot;toupper&amp;quot; type=&amp;quot;call&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/Channel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are able to test your first {{VULCON}} service from the {{L_GVCONSOLE}}. But first you need to export the configuration.&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER5.jpg|thumb|Exporting configuration]]Once the flow is correctly configured, the user can export the configuration and pass it to the {{GVESB}} import tool, in order to add into the {{GVESB}} the service just created.&lt;br /&gt;
# The Export function is available in the view &amp;quot;Project&amp;quot;. Expand the project&lt;br /&gt;
# Before you proceed press F5 to refresh the file list.&lt;br /&gt;
# Right click the ''conf'' folder. It will open a drop-down list. &lt;br /&gt;
# Export your project as a compressed file.&lt;br /&gt;
&lt;br /&gt;
===Testing with {{GVCONSOLE}}===&lt;br /&gt;
&lt;br /&gt;
It is finally arrived the time to test your project. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} project as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Browse and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TOUPPER_A a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new service:&lt;br /&gt;
# Into the Service voice select TOUPPER_A&lt;br /&gt;
# Into the System voice select GVESB_TEST&lt;br /&gt;
# Click Request&lt;br /&gt;
&lt;br /&gt;
When test finishes, the Testing view will be expanded for containing the GVBUFFER OUTPUT. In this case no properties have been defined so there are only be presents the main informations about the process (System, Service, Id, etc.). Standard fields and the detailed GVBuffer are described in the [[Testing#Data_input|Output File Name]] (we setted it as &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/TestOutput.txt). &lt;br /&gt;
&lt;br /&gt;
In case of error or exceptions you can review the logs file presents in the folder &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Shell-call&amp;diff=2391</id>
		<title>Shell-call</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Shell-call&amp;diff=2391"/>
		<updated>2012-02-17T14:27:39Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Definition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Definition==&lt;br /&gt;
Many IT applications, within their business process, need to invoke shell commands. ''Gvvcl-shell'' plug-in can be used to invoke a command shell.&lt;br /&gt;
It is very simple to configure. &lt;br /&gt;
&lt;br /&gt;
{{GVESB}} provides two different tools, {{L_GVCONSOLE}} and {{L_VULCON}}, to configure all supported plug-ins in {{GVESB}} services.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVCONSOLE}} Configuration==&lt;br /&gt;
''shell-call'' is the operation that must be configured into {{L_VULCON}} or  {{L_GVCONSOLE}} [[System section]] to invoke command shell.&lt;br /&gt;
&lt;br /&gt;
In order to add an operation ''shell-call'' you must define the following fields:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || This attribute must assume the value '''call'''.&lt;br /&gt;
|-&lt;br /&gt;
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.virtual.shell.ShellCallOperation''' (java class that manages the ''shell-call'' invocation).&lt;br /&gt;
|-&lt;br /&gt;
| name || required || This field identify the operation name that you will use in service definition.&lt;br /&gt;
|-&lt;br /&gt;
| directory || optional ||Pathname of the directory in which the command is executed. This pathname can be static or may contain [[placeholders]] that are replaced at runtime. If this attribute is not present, the command is executed within the current working directory.&lt;br /&gt;
|-&lt;br /&gt;
| encoding || optional || The encoding with which encodes the command output in the [[GVBuffer]] body. If not specified, is used the ''file.encoding'' system property value.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure a ''shell-call'' operation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;Channel id-channel=&amp;quot;CHANNEL-NAME&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;shell-call class=&amp;quot;it.greenvulcano.gvesb.virtual.shell.ShellCallOperation&amp;quot;&lt;br /&gt;
      directory=&amp;quot;/home/greenvulcano/script&amp;quot; name=&amp;quot;cat_file&amp;quot;&lt;br /&gt;
      type=&amp;quot;call&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;cmd&amp;gt;cat greenvulcano.log&amp;lt;/cmd&amp;gt;&lt;br /&gt;
    &amp;lt;/shell-call&amp;gt;&lt;br /&gt;
&amp;lt;/Channel&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To use an ''excelreader-call'' in a {{GVESB}} service, you need to define a node of type [[GVOperationNode]] in [[Service section]] and define in the field ''operation-name'' the name defined in ''excelreader-call'' operation.&lt;br /&gt;
&lt;br /&gt;
The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure an ''shell-call'' operation in {{GVESB}} service:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;GVServices name=&amp;quot;SERVICES&amp;quot; type=&amp;quot;module&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Groups&amp;gt;&lt;br /&gt;
        &amp;lt;Group group-activation=&amp;quot;on&amp;quot; id-group=&amp;quot;DEFAULT_GRP&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/Groups&amp;gt;&lt;br /&gt;
    &amp;lt;Services&amp;gt;&lt;br /&gt;
        &amp;lt;Service group-name=&amp;quot;DEFAULT_GRP&amp;quot; id-service=&amp;quot;SERVICE-NAME&amp;quot;&lt;br /&gt;
                 service-activation=&amp;quot;on&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;Client id-system=&amp;quot;SYSTEM-NAME&amp;quot; statistics=&amp;quot;off&amp;quot; system-activation=&amp;quot;on&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                           out-check-type=&amp;quot;none&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;Participant id-channel=&amp;quot;CHANNEL-NAME&amp;quot; id-system=&amp;quot;SYSTEM-NAME&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;Flow first-node=&amp;quot;cat_log_file&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;112&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                                         id=&amp;quot;shell-call&amp;quot; id-system=&amp;quot;YOUR_SYSTEM&amp;quot;&lt;br /&gt;
                                         input=&amp;quot;input&amp;quot; next-node-id=&amp;quot;end&amp;quot;&lt;br /&gt;
                                         op-type=&amp;quot;call&amp;quot;&lt;br /&gt;
                                         operation-name=&amp;quot;cat_file&amp;quot;&lt;br /&gt;
                                         output=&amp;quot;output&amp;quot; point-x=&amp;quot;158&amp;quot;&lt;br /&gt;
                                         point-y=&amp;quot;112&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                                   end-business-process=&amp;quot;yes&amp;quot; id=&amp;quot;end&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                                   output=&amp;quot;output&amp;quot; point-x=&amp;quot;358&amp;quot; point-y=&amp;quot;112&amp;quot;&lt;br /&gt;
                                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/Flow&amp;gt;&lt;br /&gt;
                &amp;lt;/Operation&amp;gt;&lt;br /&gt;
            &amp;lt;/Client&amp;gt;    &lt;br /&gt;
        &amp;lt;/Service&amp;gt;&lt;br /&gt;
    &amp;lt;/Services&amp;gt;&lt;br /&gt;
&amp;lt;/GVServices&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At this point you have configured a service with a ''shell-call'' operation.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER&amp;diff=2381</id>
		<title>GVExample TOUPPER</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER&amp;diff=2381"/>
		<updated>2012-02-17T11:50:44Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* How To */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
This simple example shows a [[Paradigms_of_communication|synchronous service]] and its configuration.&lt;br /&gt;
A string is passed and {{GVESB}} returns it uppercase.&lt;br /&gt;
&lt;br /&gt;
==How To==&lt;br /&gt;
&lt;br /&gt;
[[File:NewVulconProject.jpg|thumb| New Vulcon Project]]As this might be our first example, the first step will be the creation of a new {{VULCON}} Project.&lt;br /&gt;
# From the Menu panel of {{VULCON}} click File -&amp;gt; New -&amp;gt; Project. A new windows will be open containing the projects type.&lt;br /&gt;
# Select Vulcon -&amp;gt; &amp;quot;New Vulcon Project&amp;quot; item. Then click Next&lt;br /&gt;
# Set the project name and Location. We named the project GVEXAMPLE and the Location as &amp;lt;nowiki&amp;gt;${{gv.app.home}}/TEST/TESTFS&amp;lt;/nowiki&amp;gt;. Then click finish. The new {{VULCON}} project GVEXAMPLE has been created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The best mode for creating a [[Service]] is through the Service Wizard. Before using it you must first define a new [[Group]], [[System]] and [[Channel]], if you do not want to use those already present, and the workflow operations.&lt;br /&gt;
From the core view:&lt;br /&gt;
# Right click the element Groups -&amp;gt; Insert after (or Insert before) -&amp;gt; Group. A new element Group will be created. &lt;br /&gt;
# Click on the Group new element and set the attribute ''id-group'' from the Properties View. We named it TEST_GROUP.&lt;br /&gt;
# Expand the GVSystems item.&lt;br /&gt;
# Right clicking on Systems, insert-after -&amp;gt; System. A new element System will be created.&lt;br /&gt;
# Set the [[System]] parameters in the [[VulCon_perspective|Properties panel]]. We named it GVESB_TEST&lt;br /&gt;
# You can insert a new [[Channel]] right clicking the new [[System]] element -&amp;gt; Insert after (or Insert before) -&amp;gt; Channel*. A new Channel element will be created&lt;br /&gt;
# Click on this new Channel element and set the property ''id_channel''. We named it TEST_CHANNEL&lt;br /&gt;
# Finally, insert the operation you need for the workflow. In this case a ''test-service-call''. Right clicking Channel -&amp;gt; Insert after -&amp;gt; [[test-service-call]]. A new element ''test-service-call'' will be created.&lt;br /&gt;
# Set the [[test-service-call]] attributes. From the properties view set the ''name'' attribute as ''test''.&lt;br /&gt;
&lt;br /&gt;
[[File:NewServiceWizard.jpg|thumb|New {{GVESB}} Service Wizard]]Now we are able to use the Wizard.&lt;br /&gt;
# From the Core View of {{VULCON}}. Right click the element Services -&amp;gt; Wizard New Service&lt;br /&gt;
# A new window will be open where you can set the name of the Service you want to create, in this case we name it TOUPPER, and as Group, we use TEST_GROUP. You can also select the communication paradigm, for this example it will be [[Paradigms_of_communication#synchronous-synchronous|synchronous-synchronous]]. Click next.&lt;br /&gt;
# Set System as GVESB_TEST and Channel as TEST_CHANNEL. Then choose the Operation, in this case Test. Then finish.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:TOUPPEREditor.jpg |thumb |TOUPPER flow]]As you can see from the core view, inside the Services element, a new Service named TOUPPER has been created. The editor will be opened automatically, showing the nodes involved in our [[Flow]].&lt;br /&gt;
* The [[Main_nodes|Start node]] sets the flow first node. In this case ''request''&lt;br /&gt;
* The [[Operations |Operation node]] ''request'' calls the ''test-service-call'' operation '''test''' and executes it.&lt;br /&gt;
* A [[Main_nodes|Check node]] named ''check_status'' is also inserted for controlling the success of the preceding node.&lt;br /&gt;
* If ''success'' flow passes to the [[Main_nodes|End node]] ''return_status''&lt;br /&gt;
* In case of Error, flow goes to the [[Main_nodes|End node]] ''return_error''. The difference with ''return_status'' is signed by the [[Palette|Connection]] with ''check_status'' Check node. In this case an [[Palette|Error Connection]] (the Red arrow) have been used. &lt;br /&gt;
* Save clicking the ''Save'' icon from the Core View&lt;br /&gt;
&lt;br /&gt;
The GVCore.xml configuration file will be changed as follows:&lt;br /&gt;
* Into ''Services'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;TEST_GROUP&amp;quot; id-service=&amp;quot;TOUPPER&amp;quot; service-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                     statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                           out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                   input=&amp;quot;input_test&amp;quot; next-node-id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                   op-type=&amp;quot;call&amp;quot; operation-name=&amp;quot;test&amp;quot;&lt;br /&gt;
                   output=&amp;quot;output_test&amp;quot; point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                   default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                   input=&amp;quot;output_test&amp;quot; on-exception-id=&amp;quot;return_error&amp;quot;&lt;br /&gt;
                   op-type=&amp;quot;check&amp;quot; point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_test&amp;quot;&lt;br /&gt;
                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;50&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_test&amp;quot;&lt;br /&gt;
                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;250&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/Flow&amp;gt;&lt;br /&gt;
     &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Into ''Systems'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;System id-system=&amp;quot;GVESB_TEST&amp;quot; system-activation=&amp;quot;on&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;Channel id-channel=&amp;quot;TEST_CHANNEL&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;test-service-call class=&amp;quot;it.greenvulcano.gvesb.virtual.internal.TestServiceCall&amp;quot;&lt;br /&gt;
                name=&amp;quot;test&amp;quot; service=&amp;quot;toupper&amp;quot; type=&amp;quot;call&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/Channel&amp;gt;&lt;br /&gt;
&amp;lt;/System&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are able to test your first {{VULCON}} Service from the {{L_GVCONSOLE}}. But first you need to export the configuration.&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER5.jpg|thumb|Exporting configuration]]Once the flow is correctly configured, the user can export the configuration and pass it to the {{GVESB}} import tool, in order to add into the {{GVESB}} the service just created.&lt;br /&gt;
# The Export function is available in the view &amp;quot;Project&amp;quot;. Expand the project&lt;br /&gt;
# Before you proceed press F5 to refresh the file list.&lt;br /&gt;
# Right click the ''conf'' folder. It will open a drop-down list. &lt;br /&gt;
# Export your project as a compressed file.&lt;br /&gt;
&lt;br /&gt;
===Testing with {{GVCONSOLE}}===&lt;br /&gt;
&lt;br /&gt;
It is finally arrived the time to test your project. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} project as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Browse and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TOUPPER a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new service:&lt;br /&gt;
# Into the Service voice select TOUPPER&lt;br /&gt;
# Into the System voice select GVESB_TEST&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
When test finishes, the Testing view will be expanded for containing the GVBUFFER OUTPUT. In this case no properties have been defined so there are only be presents the main informations about the process (System, Service, Id, etc.). Standard fields and the detailed GVBuffer are described in the [[Testing#Data_input|Output File Name]] (we setted it as &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/TestOutput.txt). &lt;br /&gt;
&lt;br /&gt;
In case of error or exceptions you can review the logs file present in the folder &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER&amp;diff=2380</id>
		<title>GVExample TOUPPER</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_TOUPPER&amp;diff=2380"/>
		<updated>2012-02-17T11:47:06Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
This simple example shows a [[Paradigms_of_communication|synchronous service]] and its configuration.&lt;br /&gt;
A string is passed and {{GVESB}} returns it uppercase.&lt;br /&gt;
&lt;br /&gt;
==How To==&lt;br /&gt;
&lt;br /&gt;
[[File:NewVulconProject.jpg|thumb| New Vulcon Project]]As this is our first example, the first step will be the creation of a new {{VULCON}} Project.&lt;br /&gt;
# From the Menu panel of {{VULCON}} click File -&amp;gt; New -&amp;gt; Project. A new windows will be open containing the projects type.&lt;br /&gt;
# Select Vulcon -&amp;gt; &amp;quot;New Vulcon Project&amp;quot; item. Then click Next&lt;br /&gt;
# Set the project name and Location. We named the project GVEXAMPLE and the Location as &amp;lt;nowiki&amp;gt;${{gv.app.home}}/TEST/TESTFS&amp;lt;/nowiki&amp;gt;. Then click finish. The new {{VULCON}} project GVEXAMPLE has been created.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The best mode for creating a [[Service]] is through the Wizard. But for use it you must first define a new [[Group]], [[System]] and [[Channel]], if you do not want to use those already presents, and the workflow operations.&lt;br /&gt;
From the core view:&lt;br /&gt;
# Right click the element Groups -&amp;gt; Insert after (or Insert before) -&amp;gt; Group. A new element Group will be created. &lt;br /&gt;
# Click on the Group new element and set the attribute ''id-group'' from the Properties View. We named it TEST_GROUP.&lt;br /&gt;
# Expand the GVSystems item.&lt;br /&gt;
# Right clicking on Systems, insert-after -&amp;gt; System. A new element System will be created.&lt;br /&gt;
# Set the [[System]] parameters in the [[VulCon_perspective|Properties panel]]. We named it GVESB_TEST&lt;br /&gt;
# You can insert a new [[Channel]] right clicking the new [[System]] element -&amp;gt; Insert after (or Insert before) -&amp;gt; Channel*. A new Channel element will be created&lt;br /&gt;
# Click on this new Channel element and set the property ''id_channel''. We named it TEST_CHANNEL&lt;br /&gt;
# Finally, insert the operation you need for the workflow. In this case a ''test-service-call''. Right clicking Channel -&amp;gt; Insert after -&amp;gt; [[test-service-call]]. A new element ''test-service-call'' will be created.&lt;br /&gt;
# Set the [[test-service-call]] attributes. From the properties view set the ''name'' attribute as ''test''.&lt;br /&gt;
&lt;br /&gt;
[[File:NewServiceWizard.jpg|thumb|New {{GVESB}} Service Wizard]]Now we are able to use the Wizard.&lt;br /&gt;
# From the Core View of {{VULCON}}. Right click the element Services -&amp;gt; Wizard New Service&lt;br /&gt;
# A new windows will be open where you can set the name of the Service you want to create, in this case we named TOUPPER, and your Group, we used TEST_GROUP. You can also select the paradigm, for this example will be [[Paradigms_of_communication#synchronous-synchronous|synchronous-synchronous]]. Click next.&lt;br /&gt;
# Set System as GVESB_TEST and Channel as TEST_CHANNEL. Then chose the Operation, in this case Test. Then finish.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:TOUPPEREditor.jpg |thumb |TOUPPER flow]]As you can see from the core view, inside the Services element, a new Service named TOUPPER has been created. The editor will be open automatically, showing the nodes involved in our [[Flow]].&lt;br /&gt;
* The [[Main_nodes|Start node]] sets the flow first node. In this case ''request''&lt;br /&gt;
* The [[Operations |Operation node]] ''request'' calls the ''test-service-call'' operation '''test''' and executes it.&lt;br /&gt;
* A [[Main_nodes|Check node]] named ''check_status'' is also inserted for controlling the success of the preceding node.&lt;br /&gt;
* If ''success'' flow passes to the [[Main_nodes|End node]] ''return_status''&lt;br /&gt;
* In case of Error, flow goes to the [[Main_nodes|End node]] ''return_error''. The difference with ''return_status'' is signed by the [[Palette|Connection]] with ''check_status'' Check node. In this case an [[Palette|Error Connection]] (the Red arrow) have been used. &lt;br /&gt;
* Save clicking the ''Save'' icon from the Core View&lt;br /&gt;
&lt;br /&gt;
The GVCore.xml configuration file will be changed as follow:&lt;br /&gt;
* Into ''Services'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;TEST_GROUP&amp;quot; id-service=&amp;quot;TOUPPER&amp;quot; service-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                     statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot;&lt;br /&gt;
                           out-check-type=&amp;quot;sys-svc-tid&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;Description&amp;gt;VulCon generated Operation&amp;lt;/Description&amp;gt;&lt;br /&gt;
         &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;Flow first-node=&amp;quot;request&amp;quot; point-x=&amp;quot;50&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;request&amp;quot; id-system=&amp;quot;GVESB_TEST&amp;quot;&lt;br /&gt;
                   input=&amp;quot;input_test&amp;quot; next-node-id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                   op-type=&amp;quot;call&amp;quot; operation-name=&amp;quot;test&amp;quot;&lt;br /&gt;
                   output=&amp;quot;output_test&amp;quot; point-x=&amp;quot;200&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVNodeCheck class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVNodeCheck&amp;quot;&lt;br /&gt;
                   default-id=&amp;quot;return_status&amp;quot; id=&amp;quot;check_status&amp;quot;&lt;br /&gt;
                   input=&amp;quot;output_test&amp;quot; on-exception-id=&amp;quot;return_error&amp;quot;&lt;br /&gt;
                   op-type=&amp;quot;check&amp;quot; point-x=&amp;quot;350&amp;quot; point-y=&amp;quot;150&amp;quot;&lt;br /&gt;
                   type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;return_status&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_test&amp;quot;&lt;br /&gt;
                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;50&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                   id=&amp;quot;return_error&amp;quot; op-type=&amp;quot;end&amp;quot; output=&amp;quot;output_test&amp;quot;&lt;br /&gt;
                   point-x=&amp;quot;700&amp;quot; point-y=&amp;quot;250&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
         &amp;lt;/Flow&amp;gt;&lt;br /&gt;
     &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Into ''Systems'' element will be added the tag&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;System id-system=&amp;quot;GVESB_TEST&amp;quot; system-activation=&amp;quot;on&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;Channel id-channel=&amp;quot;TEST_CHANNEL&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;test-service-call class=&amp;quot;it.greenvulcano.gvesb.virtual.internal.TestServiceCall&amp;quot;&lt;br /&gt;
                name=&amp;quot;test&amp;quot; service=&amp;quot;toupper&amp;quot; type=&amp;quot;call&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/Channel&amp;gt;&lt;br /&gt;
&amp;lt;/System&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are able to test your first {{VULCON}} service from the {{L_GVCONSOLE}}. But first you need to export the configuration.&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTOUPPER5.jpg|thumb|Exporting configuration]]Once the flow is correctly configured, the user can export the configuration and pass it to the {{GVESB}} import tool, in order to add into the {{GVESB}} the service just created.&lt;br /&gt;
# The Export function is available in the view &amp;quot;Project&amp;quot;. Expand the project&lt;br /&gt;
# Before you proceed press F5 to refresh the file list.&lt;br /&gt;
# Right click the ''conf'' folder. It will open a drop-down list. &lt;br /&gt;
# Export your project as a compressed file.&lt;br /&gt;
&lt;br /&gt;
===Testing with {{GVCONSOLE}}===&lt;br /&gt;
&lt;br /&gt;
It is finally arrived the time to test your project. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} project as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Browse and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TOUPPER a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new service:&lt;br /&gt;
# Into the Service voice select TOUPPER&lt;br /&gt;
# Into the System voice select GVESB_TEST&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
When test finishes, the Testing view will be expanded for containing the GVBUFFER OUTPUT. In this case no properties have been defined so there are only be presents the main informations about the process (System, Service, Id, etc.). Standard fields and the detailed GVBuffer are described in the [[Testing#Data_input|Output File Name]] (we setted it as &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/TestOutput.txt). &lt;br /&gt;
&lt;br /&gt;
In case of error or exceptions you can review the logs file presents in the folder &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log/.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Compatible_platforms&amp;diff=2363</id>
		<title>Compatible platforms</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Compatible_platforms&amp;diff=2363"/>
		<updated>2012-02-17T08:56:23Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Supported Hardware Platforms */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Supported Hardware Platforms==&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} can be installed on the following hardware platforms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Component !! Technology  !! Note&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Processor || Intel x86 &amp;lt;br /&amp;gt;x86-64 (AMD64 (AMD) or Intel64 (Intel) &amp;lt;br /&amp;gt;Intel IA-64 (Itanium, Itanium II) &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;1 CPU with frequency 1.8 Ghz  ||  valign=&amp;quot;top&amp;quot;|{{GVESB}} supports all processors based on Intel x86 and x86-64. &amp;lt;br /&amp;gt; Processors using different technologies are compatible to its support by the ''Java Virtual Machine''&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Memory || 1Gb minim &amp;lt;br /&amp;gt; 2Gb recommended||&lt;br /&gt;
|-&lt;br /&gt;
| Disk space || 300Mb min || Depends on the log retention policies&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Supported Software Platforms==&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} can be installed on different operating systems. The following table shows the list of compatible software platforms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Technology  !! Platform&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Operating system || Microsoft: Windows XP SP3, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008 &amp;lt;br /&amp;gt;&lt;br /&gt;
.nix: Linux (kernel 2.6.x), Solaris, AIX, HP-UX &amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Application servers || JBoss v. 5.1.0-GA, any J2EE compliant application server &amp;lt;br /&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
|-&lt;br /&gt;
| Java || JDK 1.6 (Sun Microsystems)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Compatible_platforms&amp;diff=2362</id>
		<title>Compatible platforms</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Compatible_platforms&amp;diff=2362"/>
		<updated>2012-02-17T08:55:30Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Supported Software Platforms */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Supported Hardware Platforms==&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} can be installed on the following hardware platforms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Component !! Technology  !! Note&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Processor || Intel x86 &amp;lt;br /&amp;gt;x86-64 (AMD64 (AMD) or Intel64 (Intel) &amp;lt;br /&amp;gt;Intel IA-64 (Itanium, Itanium II) &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;1 CPU with frequency 1.8 Ghz  ||  valign=&amp;quot;top&amp;quot;|{{GVESB}} supports all processors based on Intel x86 and x86-64. &amp;lt;br /&amp;gt; Processors using different technologies are compatible to its support by the ''Java Virtual Machine''&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Memory || 1Gb minim &amp;lt;br /&amp;gt; 2Gb advised ||&lt;br /&gt;
|-&lt;br /&gt;
| Disk space || 300Mb min || Depends on the log retention policies&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Supported Software Platforms==&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} can be installed on different operating systems. The following table shows the list of compatible software platforms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Technology  !! Platform&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Operating system || Microsoft: Windows XP SP3, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008 &amp;lt;br /&amp;gt;&lt;br /&gt;
.nix: Linux (kernel 2.6.x), Solaris, AIX, HP-UX &amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|Application servers || JBoss v. 5.1.0-GA, any J2EE compliant application server &amp;lt;br /&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
|-&lt;br /&gt;
| Java || JDK 1.6 (Sun Microsystems)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2325</id>
		<title>Roadmap</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2325"/>
		<updated>2012-02-16T11:38:41Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* RoadMap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Road Map===&lt;br /&gt;
&lt;br /&gt;
The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Requests / Contributions from the community&lt;br /&gt;
* Specific needs of customers and developers&lt;br /&gt;
* Contributions of the partners / System Integrators&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our team adds its experience and expertise by offering innovative solutions in line with the vision that has always pushed us since our birth: simplicity and robustness.&lt;br /&gt;
&lt;br /&gt;
GreenVulcano remains thus attached to the &amp;quot;real world&amp;quot;, not in any way feeling the need to pursue or chasing at all costs the latest fashion trends of other products in the market.&lt;br /&gt;
&lt;br /&gt;
The Roadmap is updated by our software architects and checked every six months.&lt;br /&gt;
&lt;br /&gt;
===Version 3.2 (Q1 2012)===&lt;br /&gt;
&lt;br /&gt;
1) “Sub Flow” management&lt;br /&gt;
&lt;br /&gt;
2) BPEL Flows management &lt;br /&gt;
&lt;br /&gt;
3) Every-component-Wizard on [[VulCon]] designer &lt;br /&gt;
&lt;br /&gt;
4) Grafical Data Mapper&lt;br /&gt;
&lt;br /&gt;
5) Drools integration&lt;br /&gt;
&lt;br /&gt;
6) HL7 Adapter&lt;br /&gt;
&lt;br /&gt;
7) New Wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.3 (Q3 2012)===&lt;br /&gt;
&lt;br /&gt;
1) Parallel flows&lt;br /&gt;
&lt;br /&gt;
2) Grafical Try/Catch&lt;br /&gt;
&lt;br /&gt;
3) Deploy and test from VulCon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.4 (Q2 2013)===&lt;br /&gt;
&lt;br /&gt;
1) Grafical Debugger&lt;br /&gt;
&lt;br /&gt;
2) Service High availability and GV cluster management implementation&lt;br /&gt;
&lt;br /&gt;
3) EJB 3.0 and Spring based version release&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Template:Main_Page/Overview&amp;diff=2324</id>
		<title>Template:Main Page/Overview</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Template:Main_Page/Overview&amp;diff=2324"/>
		<updated>2012-02-16T11:38:27Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;mainbox&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Overview&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mainbox_content&amp;quot;&amp;gt;&lt;br /&gt;
{{GVESB}} is an Enterprise Service Bus, [http://en.wikipedia.org/wiki/Open_source Open Source], fully developed by one of the most experienced [http://en.wikipedia.org/wiki/Enterprise_application_integration EAI] teams, derived from a deep understanding of the topic on vendor products and from the direct participation in implementations of ESB systems with very challenging design requirements:&lt;br /&gt;
&lt;br /&gt;
* High transactions volume&lt;br /&gt;
* Large number of interconnected systems and different protocols supported&lt;br /&gt;
* Response in near real time&lt;br /&gt;
* Availability of  technology adapters (Database, File, {{L_GVWS}}, e-Mail, etc)&lt;br /&gt;
* Availability of application adapters&lt;br /&gt;
* Powerful and flexible [[Data transformation]] engine&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} is a Java-based software built to support complex [http://en.wikipedia.org/wiki/Service-oriented_architecture SOA] architectures. Its [[multi-layer architecture]] allows an unlimited customization, solving most of enterprise integration issues like exchanging data between existing systems. Many [[plugins]] and [[adapters]] are already available for a huge flexibility.&lt;br /&gt;
&lt;br /&gt;
Take a look at our [[Roadmap|Road Map]] and share your opinion with our team!&lt;br /&gt;
&lt;br /&gt;
See also: [[License]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_ValidateRemoteXMLFiles&amp;diff=2314</id>
		<title>GVExample ValidateRemoteXMLFiles</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVExample_ValidateRemoteXMLFiles&amp;diff=2314"/>
		<updated>2012-02-16T10:05:52Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesValidateXMLFilesShow.jpg|thumb|Validation of Remote XML Files]]&lt;br /&gt;
The flow is designed to show how {{GVESB}} manages the files present in a Remote file system and how can perform a validation of an xml file. It is executed following these steps:&lt;br /&gt;
&lt;br /&gt;
* Reading XML files from a remote input directory via FTP (TextXML/input)&lt;br /&gt;
* Validating the read files using a predefined schema&lt;br /&gt;
* Coping valid and invalid files in two separated directories (TextXML/validated and TextXML/discarded)&lt;br /&gt;
* Saving a file &amp;lt;filename&amp;gt;.result with the &amp;lt;filename&amp;gt; validation error message&lt;br /&gt;
&lt;br /&gt;
For this example the following parameters have been used:&lt;br /&gt;
* Server FTP&lt;br /&gt;
: FTP : localhost:3021&lt;br /&gt;
: Utente : test_user/test_user&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} Configuration==&lt;br /&gt;
&lt;br /&gt;
The implementation is the same of services [[GVExample ValidateXMLFiles |ValidateXMLFiles and ValidateSingleXMLFile]]. It consists of two services that perform the following tasks:&lt;br /&gt;
* ValidateRemoteXMLFiles: Enumerates the files to be validated&lt;br /&gt;
* ValidateSingleRemoteXMLFile: Validates and moves each single file&lt;br /&gt;
&lt;br /&gt;
The difference between these services is in the operations to be performed. The following table shows the operations used for each service, divided by scope:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Scope !! ValidateXMLFiles/ValidateSingleXMLFile !! ValidateRemoteXMLFiles/ValidateSingleRemoteXMLFile&lt;br /&gt;
|-&lt;br /&gt;
| Scanning XML files || [[fsmonitor-call]] || [[fsmonitor-call]]&lt;br /&gt;
|-&lt;br /&gt;
| Reading/download a file || [[filereader-call]] || [[remotemanager-call]]&lt;br /&gt;
|-&lt;br /&gt;
| Moving a file || [[filemanager-call]] || [[remotemanager-call]]&lt;br /&gt;
|-&lt;br /&gt;
| Writing/upload a file || [[filewriter-call]] || [[remotemanager-call]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To configure this service, the steps are as follows:&lt;br /&gt;
# Definition of systems, Channels and Operations&lt;br /&gt;
# Definition of Services&lt;br /&gt;
# Flow implementation&lt;br /&gt;
&lt;br /&gt;
===Definition of Systems, Channels and Operations===&lt;br /&gt;
&lt;br /&gt;
For the definition of the system go to the {{VULCON}} core view and insert the System GVESB (if not present).&lt;br /&gt;
Define the Channel TEST_CHANNEL_REMOTE_FILE with the following operations:&lt;br /&gt;
* [[fsmonitor-call]]: This operation allows to analyse the directory &amp;quot;path&amp;quot; and return an XML report with the list of files that verify the regular expression &amp;quot;file-mask&amp;quot; (&amp;quot;*. \ xml&amp;quot;) in the given directory. Set its attributes as:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ScanXMLFiles&lt;br /&gt;
|-&lt;br /&gt;
| RemoteFileSystemMonitor/path || /home/test_user/TestXML/input&lt;br /&gt;
|-&lt;br /&gt;
| FileFilter/file-mask || .*\.xml&lt;br /&gt;
|-&lt;br /&gt;
| FileFilter/file-type || files-only&lt;br /&gt;
|-&lt;br /&gt;
| ResultFilter/existing || true&lt;br /&gt;
|-&lt;br /&gt;
| InMemoryMonitorStatus || dumpStatus=&amp;quot;false&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| FTPManager || autoConnect=&amp;quot;false&amp;quot;&amp;lt;br/&amp;gt;hostType=&amp;quot;UNIX&amp;quot; hostname=&amp;quot;localhost&amp;quot;&amp;lt;br/&amp;gt;password=&amp;quot;{3DES}pl1YKFjWlqMfdTIbxY17Mg==&amp;quot;&amp;lt;br/&amp;gt;port=&amp;quot;3021&amp;quot; type=&amp;quot;remote-manager&amp;quot;&amp;lt;br/&amp;gt; username=&amp;quot;test_user&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
: This operation also imposes some properties into the output [[GVBuffer]], if files with the indicated conditions exist:&lt;br /&gt;
:* GVFSM_REPORT_CREATED setted to &amp;quot;true&amp;quot;&lt;br /&gt;
:* GVFSM_EXISTING_FILES number of file presents&lt;br /&gt;
&lt;br /&gt;
* [[remotemanager-call]]: This operation allows to move the file, which name is present into the [[GVBuffer]] property &amp;quot;FILE_NAME&amp;quot; from the directory &amp;quot;input&amp;quot; to the directory which name is present into the [[GVBuffer]] property &amp;quot;TARGET&amp;quot;. The directory of destination depends on the property &amp;quot;TARGET&amp;quot; value that worflow gives when imposes it to &amp;quot;validated&amp;quot; if the XML file is correct, or &amp;quot;discarded&amp;quot; if don't.  Set its attributes as:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || MoveFile&lt;br /&gt;
|-&lt;br /&gt;
| FTPManager || autoConnect=&amp;quot;false&amp;quot;&amp;lt;br/&amp;gt;hostType=&amp;quot;UNIX&amp;quot; hostname=&amp;quot;localhost&amp;quot;&amp;lt;br/&amp;gt;password=&amp;quot;{3DES}pl1YKFjWlqMfdTIbxY17Mg==&amp;quot;&amp;lt;br/&amp;gt;port=&amp;quot;3021&amp;quot; type=&amp;quot;remote-manager&amp;quot;&amp;lt;br/&amp;gt; username=&amp;quot;test_user&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| RemoteCommands/RemoteMoveCommand || isCritical=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt;  newName=&amp;quot;ognl{{property[&amp;amp;apos;TARGET&amp;amp;apos;]}}/ognl{{property[&amp;amp;apos;FILE_NAME&amp;amp;apos;]}}&amp;quot;&amp;lt;br/&amp;gt;oldName=&amp;quot;input/ognl{{property[&amp;amp;apos;FILE_NAME&amp;amp;apos;]}}&amp;quot;&amp;lt;br/&amp;gt; targetPath=&amp;quot;/home/test_user/TestXML&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [[remotemanager-call]]: This operation allows to download the file which name is defined in the property &amp;quot;FILE_NAME&amp;quot; into the &amp;quot;remotePath&amp;quot; directory. The file content will be charged in GVBuffer.object field as array of bytes. Set its attributes as:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ReadFile&lt;br /&gt;
|-&lt;br /&gt;
| FTPManager || autoConnect=&amp;quot;false&amp;quot;&amp;lt;br/&amp;gt;hostType=&amp;quot;UNIX&amp;quot; hostname=&amp;quot;localhost&amp;quot;&amp;lt;br/&amp;gt;password=&amp;quot;{3DES}pl1YKFjWlqMfdTIbxY17Mg==&amp;quot;&amp;lt;br/&amp;gt;port=&amp;quot;3021&amp;quot; type=&amp;quot;remote-manager&amp;quot;&amp;lt;br/&amp;gt; username=&amp;quot;test_user&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| RemoteCommands/RemoteDownloadCommand || isCritical=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt;  remoteFilePattern=&amp;quot;ognl{{property[&amp;amp;apos;FILE_NAME&amp;amp;apos;]}}&amp;quot;&amp;lt;br/&amp;gt; remotePath=&amp;quot;/home/test_user/TestXML/input&amp;quot;&amp;lt;br/&amp;gt; toGVBufferExpression=&amp;quot;setObject(new java.lang.String(#input))&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [[remotemanager-call]]: This operation allows to upload the file which name is defined concatenating the property &amp;quot;FILE_NAME&amp;quot; with the string &amp;quot;.result&amp;quot;, into the &amp;quot;remotePath&amp;quot; directory. The file content will be present into the &amp;quot;fromGVBufferExpression&amp;quot; field. Set its attributes as:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || WriteStatusFile&lt;br /&gt;
|-&lt;br /&gt;
| FTPManager || autoConnect=&amp;quot;false&amp;quot;&amp;lt;br/&amp;gt;hostType=&amp;quot;UNIX&amp;quot; hostname=&amp;quot;localhost&amp;quot;&amp;lt;br/&amp;gt;password=&amp;quot;{3DES}pl1YKFjWlqMfdTIbxY17Mg==&amp;quot;&amp;lt;br/&amp;gt;port=&amp;quot;3021&amp;quot; type=&amp;quot;remote-manager&amp;quot;&amp;lt;br/&amp;gt; username=&amp;quot;test_user&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| RemoteCommands/RemoteUploadCommand || fromGVBufferExpression=&amp;quot;getObject().getBytes()&amp;quot;&amp;lt;br/&amp;gt; isCritical=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt; remotePath=&amp;quot;/home/test_user/TestXML/discarded&amp;quot;&amp;lt;br/&amp;gt;  sourceFilePattern=&amp;quot;ognl{{property[&amp;amp;apos;FILE_NAME&amp;amp;apos;]}}.result&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Definition of Services===&lt;br /&gt;
&lt;br /&gt;
To define a Service for reading the files present into a directory, use the voice &amp;quot;Wizard new Service&amp;quot; (right clicking the Services element) with the following parameters:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! value&lt;br /&gt;
|-&lt;br /&gt;
| Service name || ValidateXMLFiles&lt;br /&gt;
|-&lt;br /&gt;
| Scenario || Synchronous- Synchronous&lt;br /&gt;
|-&lt;br /&gt;
| Client || GVESB&lt;br /&gt;
|-&lt;br /&gt;
| Server (Participant) || system = &amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt; channel = &amp;quot;TEST_CHANNEL_FILE&amp;quot; &amp;lt;br/&amp;gt; request operation = &amp;quot;ScanXMLFiles&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The Wizard will create a flow which has to be modified successively. &lt;br /&gt;
&lt;br /&gt;
Analogously, use the &amp;quot;Wizard New Service&amp;quot; for creating the service for the validation of each single XML file present in the input directory, using the following parameters:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! value&lt;br /&gt;
|-&lt;br /&gt;
| Service name || ValidateSingleXMLFile&lt;br /&gt;
|-&lt;br /&gt;
| Scenario || Synchronous-Synchronous&lt;br /&gt;
|-&lt;br /&gt;
| Client || GVESB&lt;br /&gt;
|-&lt;br /&gt;
| Server (Participant) || system = &amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt; channel = &amp;quot;TEST_CHANNEL_FILE&amp;quot; &amp;lt;br/&amp;gt; request operation = &amp;quot;ReadFile&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The Wizard will create a flow that must be modified successively.&lt;br /&gt;
&lt;br /&gt;
====Flow implementation====&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesValidateXMLFiles.jpg|thumb|ValidateRemoteXMLFile Configuration]]To define the flow for the service ''ValidateXMLFiles'', design it as it is shown in the picture:&lt;br /&gt;
&lt;br /&gt;
In this first flow all files present into the directory &amp;quot;dir_scanner&amp;quot; are read, and for each one, the service ''ValidateSingleXMLFile'' will be invoked validating it.&lt;br /&gt;
&lt;br /&gt;
The following table shows the parameters to be defined for each flow operation:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! value&lt;br /&gt;
|-&lt;br /&gt;
| Conditions/GVBufferCondition || condition=&amp;quot;CheckNumFiles&amp;quot; &amp;lt;br/&amp;gt; Property:&lt;br /&gt;
: name=&amp;quot;GVFSM-EXISTING_FILES&amp;quot;&lt;br /&gt;
: operator=&amp;quot;greater&amp;quot;&lt;br /&gt;
: type=&amp;quot;gvbuffer-field&amp;quot;&lt;br /&gt;
: value=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || id=&amp;quot;dir_scanner&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt;input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;operation-name=&amp;quot;ScanXMLFiles&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;end_nofile&amp;quot; id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;on-exception-id=&amp;quot;end_notok&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;check&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck/GVRouting || condition=&amp;quot;CheckNumFiles&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;iterate_file_list&lt;br /&gt;
|-&lt;br /&gt;
| GVIteratorOperationNode || id=&amp;quot;iterate_file_list&amp;quot; &amp;lt;br/&amp;gt;collection-dp=&amp;quot;fileNamesCollectionDP&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;end_ok&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;single-file&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVIteratorOperationNode/CoreCall || change-log-context=&amp;quot;true&amp;quot; &amp;lt;br/&amp;gt;id-service=&amp;quot;ValidateSingleXMLFile&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt; operation=&amp;quot;Request&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;end_ok&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || id=&amp;quot;end_notok&amp;quot; &amp;lt;br/&amp;gt;op-type=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesValidateSingleXMLFile.jpg|thumb| ValidateSingleRemoteXMLFile Configuration]]To define the flow for ValidateSingleXMLFile Service, design the flow as it is seen from the picture:&lt;br /&gt;
&lt;br /&gt;
In this flow the file in input is read, validated using a specific XSD and, depending on the result, the file will be moved in other directory or a new file will be created with the result of the failed validation. &lt;br /&gt;
&lt;br /&gt;
The workflow will be invoked passing into the GVBuffer.object of input an element &amp;quot;File&amp;quot; chosen from the generated XML report of the ScanXMLFiles operation.&lt;br /&gt;
&lt;br /&gt;
The following table shows the parameters to be defined for each flow operation:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! value&lt;br /&gt;
|-&lt;br /&gt;
| first-node || fillProperties&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || id=&amp;quot;fillProperties&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;node&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
next-node-id=&amp;quot;read_validate_file&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
op-type=&amp;quot;change GVBuffer&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
output=&amp;quot;input&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode/ChangeGVBuffer || OGNLScript: property['FILE_NAME']=@it.greenvulcano.configuration.XMLConfig@get(object,'@name')&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || id=&amp;quot;read_validate_file&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
id-system=&amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
next-node-id=&amp;quot;check_validate&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
operation-name=&amp;quot;ReadFile&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode/OutputServices || xml-validation-service:&lt;br /&gt;
: critical=&amp;quot;yes&amp;quot;&lt;br /&gt;
: internal=&amp;quot;yes&amp;quot;&lt;br /&gt;
: remove-fields=&amp;quot;yes&amp;quot;&lt;br /&gt;
xml-validation-call:&lt;br /&gt;
: default-xsd=&amp;quot;ValidateXML.xsd&amp;quot;&lt;br /&gt;
: name=&amp;quot;ValidateXML&amp;quot;&lt;br /&gt;
: return-dom=&amp;quot;false&amp;quot;&lt;br /&gt;
: xsd-policy=&amp;quot;force-default&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;validation_ok&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
id=&amp;quot;check_validate&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;payload&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
on-exception-id=&amp;quot;validation_failed&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || id=&amp;quot;validation_ok&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
next-node-id=&amp;quot;move_file&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || id=&amp;quot;validation_ok&amp;quot;&lt;br /&gt;
input=&amp;quot;input&amp;quot;&lt;br /&gt;
next-node-id=&amp;quot;move_file&amp;quot;&lt;br /&gt;
clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || OGNLScript: property['TARGET'] = 'validated' &amp;lt;br/&amp;gt;&lt;br /&gt;
id=&amp;quot;move_file&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
id-system=&amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
next-node-id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
operation=&amp;quot;MoveFile&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || id=&amp;quot;validation_failed&amp;quot;&lt;br /&gt;
input=&amp;quot;input&amp;quot;&lt;br /&gt;
next-node-id=&amp;quot;write_status&amp;quot;&lt;br /&gt;
clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || OGNLScript: property['TARGET'] = 'discarded', setObject(' ' + #environment.get('payload')) &amp;lt;br/&amp;gt;&lt;br /&gt;
id=&amp;quot;write_status&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
id-system=&amp;quot;GVESB&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
next-node-id=&amp;quot;move_file&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
operation-name=&amp;quot;WriteStatusFile&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
input=&amp;quot;input&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
op-type=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
output=&amp;quot;input&amp;quot;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2313</id>
		<title>TestFileAttachment</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2313"/>
		<updated>2012-02-16T09:52:34Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Flow implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachment.jpg|thumb|TestFileAttachment description]]This example shows how to use {{GVESB}} to send an email containing attachments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TestFileAttachment service executes the following operations:&lt;br /&gt;
&lt;br /&gt;
* Reads a file from an input directory (TestAttach/input)&lt;br /&gt;
* Sends an email with this file as attachment&lt;br /&gt;
* Moves the sent file to another directory (TestAttach/sent)&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} Configuration==&lt;br /&gt;
&lt;br /&gt;
To configure TestFileAttachment service follow these steps:&lt;br /&gt;
# Define the [[System]], [[Channel]] and [[Operation|Operations]] required&lt;br /&gt;
# Define the [[Service|Services]]&lt;br /&gt;
# Implement the [[Flow|flows]].&lt;br /&gt;
&lt;br /&gt;
===Defining System, Channel and Operations===&lt;br /&gt;
&lt;br /&gt;
To define a System, go to {{VULCON}} core view and, into Systems element, insert the System GVESB if it is not already present. &lt;br /&gt;
From there create the Channel TEST_CHANNEL_FILE in which the following operations will be configured:&lt;br /&gt;
&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ScanAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileSearchCommand|FileSearchCommand]] &lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot; &lt;br /&gt;
:: returnFullPath=&amp;quot;true&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || MoveAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileMoveCommand|FileMoveCommand]]:&lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
:: targetPath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[smtp-call]] &lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| jndi-name || gvesb.mailServer&lt;br /&gt;
|-&lt;br /&gt;
| name || SendEmail&lt;br /&gt;
|-&lt;br /&gt;
| mail-message || content-type=&amp;quot;text-html&amp;quot; &amp;lt;br/&amp;gt; high-priority=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt; sender-display-name=&amp;quot;GV ESB&amp;quot;&amp;lt;br/&amp;gt;            subject=&amp;quot;Test send attachments&amp;quot;&lt;br /&gt;
: destinations:&lt;br /&gt;
:: to: &lt;br /&gt;
::: mail-address: address=&amp;quot;gv2@gv.com&amp;quot;&lt;br /&gt;
: message-body: gvBuffer-dump=&amp;quot;false&amp;quot;&lt;br /&gt;
:: message-text: ${'Attachment file list:\n'+property['GV_SMTP_ATTACHMENTS']}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Flow implementation===&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentFlow.jpg|thumb|TestFileAttachment flow]]To implement the TestFileAttachment service [[Flow]] design it as shown in the picture:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service looks for the file presence in a directory, sends it as attachment and moves it into another directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following table shows the nodes and attributes to be defined:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| first-node || Prepare&lt;br /&gt;
|-&lt;br /&gt;
| Conditions/GVBufferCondition || condition=&amp;quot;FilesFound&amp;quot; type=&amp;quot;condition&amp;quot;&lt;br /&gt;
Property:&lt;br /&gt;
: name=&amp;quot;GVFM_FOUND_FILES_NUM&amp;quot;&lt;br /&gt;
: operator=&amp;quot;greater&amp;quot;&lt;br /&gt;
: type=&amp;quot;gvbuffer-field&amp;quot;&lt;br /&gt;
: value=&amp;quot;0&amp;quot;&lt;br /&gt;
: value-type=&amp;quot;integer&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt;id=&amp;quot;list_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_files&amp;quot;  &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;operation-name=&amp;quot;ScanAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;end-nofiles&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot;  &amp;lt;br/&amp;gt;on-exception-id=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;GVRouting:&lt;br /&gt;
: condition=&amp;quot;FilesFound&amp;quot;&lt;br /&gt;
: next-node-id=&amp;quot;prepare&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || dump-in-out=&amp;quot;true&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;prepare&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt; next-node-id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
ChangeGVBuffer: clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
: OGNLScript: property['GV_SMTP_ATTACHMENTS'] = property['GVFM_FOUND_FILES_LIST']&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;move_files&amp;quot;  &amp;lt;br/&amp;gt; operation-name=&amp;quot;SendEmail&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt; id=&amp;quot;move_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;end&amp;quot;  &amp;lt;br/&amp;gt;operation-name=&amp;quot;MoveAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end-nofiles&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Save the editor clicking on the Save icon of Eclipse. Control that there are not errors in the flow and save it in the apposite icon present in the Core View of {{L_VULCON}}. From the Project view, expand your project, refresh (f5), and right clicking the folder &amp;quot;conf&amp;quot; export your new configuration.&lt;br /&gt;
&lt;br /&gt;
=={{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
It is time to deploy and test your new Service. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} Configuration file as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click (Browse) and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TestFileAttachment a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new services:&lt;br /&gt;
# Into the Service voice select TestFileAttachment&lt;br /&gt;
# Into the System voice select GVESB&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
The Testing View will be expanded and it is also possible to view the GVBuffer Output panel where there are present some properties, among these the GVFM_FOUND_FILES_NUM property set to 3, representing the number of files found. &lt;br /&gt;
&lt;br /&gt;
The file TestOutput.txt will be generated in the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log as previously set (see [[Testing]], [[data input]] area) containing information about the files found and the email already sent.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
----------- TEST N. 0 2012.02.15 at 18:02:32 -----------&lt;br /&gt;
Standard Field:&lt;br /&gt;
	system   = GVESB&lt;br /&gt;
	service  = EmailFileAttachment&lt;br /&gt;
	id       = 7F0001014F3BE51400059DBA&lt;br /&gt;
	retCode  = 0&lt;br /&gt;
GVBuffer: class java.lang.String&lt;br /&gt;
&lt;br /&gt;
Properties:&lt;br /&gt;
	messageID = &amp;lt;9388830.11329325352084.JavaMail.gv1@gv.com&amp;gt;&lt;br /&gt;
	GVFM_FOUND_FILES_LIST = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
	GVFM_FOUND_FILES_NUM = 3&lt;br /&gt;
	GV_SMTP_ATTACHMENTS = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set a new account with the properties:&amp;lt;br/&amp;gt;&lt;br /&gt;
Server SMTP/POP3&lt;br /&gt;
* SMTP : localhost:3025&lt;br /&gt;
* POP3: localhost:3110&lt;br /&gt;
* Server mailbox: gv1@gv.com (gv1/gv1)&lt;br /&gt;
* Client mailbox:  gv2@gv.com (gv2/gv2)&amp;lt;br/&amp;gt;gv3@gv.com (gv3/gv3)&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentEmail.jpg|thumb|TestFileAttachment email]]You will receive an email as this shown in the picture.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can also check that the files were moved into the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2312</id>
		<title>TestFileAttachment</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2312"/>
		<updated>2012-02-16T09:49:53Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{GVCONSOLE}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachment.jpg|thumb|TestFileAttachment description]]This example shows how to use {{GVESB}} to send an email containing attachments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TestFileAttachment service executes the following operations:&lt;br /&gt;
&lt;br /&gt;
* Reads a file from an input directory (TestAttach/input)&lt;br /&gt;
* Sends an email with this file as attachment&lt;br /&gt;
* Moves the sent file to another directory (TestAttach/sent)&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} Configuration==&lt;br /&gt;
&lt;br /&gt;
To configure TestFileAttachment service follow these steps:&lt;br /&gt;
# Define the [[System]], [[Channel]] and [[Operation|Operations]] required&lt;br /&gt;
# Define the [[Service|Services]]&lt;br /&gt;
# Implement the [[Flow|flows]].&lt;br /&gt;
&lt;br /&gt;
===Defining System, Channel and Operations===&lt;br /&gt;
&lt;br /&gt;
To define a System, go to {{VULCON}} core view and, into Systems element, insert the System GVESB if it is not already present. &lt;br /&gt;
From there create the Channel TEST_CHANNEL_FILE in which the following operations will be configured:&lt;br /&gt;
&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ScanAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileSearchCommand|FileSearchCommand]] &lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot; &lt;br /&gt;
:: returnFullPath=&amp;quot;true&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || MoveAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileMoveCommand|FileMoveCommand]]:&lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
:: targetPath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[smtp-call]] &lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| jndi-name || gvesb.mailServer&lt;br /&gt;
|-&lt;br /&gt;
| name || SendEmail&lt;br /&gt;
|-&lt;br /&gt;
| mail-message || content-type=&amp;quot;text-html&amp;quot; &amp;lt;br/&amp;gt; high-priority=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt; sender-display-name=&amp;quot;GV ESB&amp;quot;&amp;lt;br/&amp;gt;            subject=&amp;quot;Test send attachments&amp;quot;&lt;br /&gt;
: destinations:&lt;br /&gt;
:: to: &lt;br /&gt;
::: mail-address: address=&amp;quot;gv2@gv.com&amp;quot;&lt;br /&gt;
: message-body: gvBuffer-dump=&amp;quot;false&amp;quot;&lt;br /&gt;
:: message-text: ${'Attachment file list:\n'+property['GV_SMTP_ATTACHMENTS']}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Flow implementation===&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentFlow.jpg|thumb|TestFileAttachment flow]]To implement the TestFileAttachment service [[Flow]] design it as shown in the picture:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service searchs the files present in a directory, sends it as attachment and moves it into another directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following table shows the nodes and attributes to be defined:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| first-node || Prepare&lt;br /&gt;
|-&lt;br /&gt;
| Conditions/GVBufferCondition || condition=&amp;quot;FilesFound&amp;quot; type=&amp;quot;condition&amp;quot;&lt;br /&gt;
Property:&lt;br /&gt;
: name=&amp;quot;GVFM_FOUND_FILES_NUM&amp;quot;&lt;br /&gt;
: operator=&amp;quot;greater&amp;quot;&lt;br /&gt;
: type=&amp;quot;gvbuffer-field&amp;quot;&lt;br /&gt;
: value=&amp;quot;0&amp;quot;&lt;br /&gt;
: value-type=&amp;quot;integer&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt;id=&amp;quot;list_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_files&amp;quot;  &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;operation-name=&amp;quot;ScanAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;end-nofiles&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot;  &amp;lt;br/&amp;gt;on-exception-id=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;GVRouting:&lt;br /&gt;
: condition=&amp;quot;FilesFound&amp;quot;&lt;br /&gt;
: next-node-id=&amp;quot;prepare&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || dump-in-out=&amp;quot;true&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;prepare&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt; next-node-id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
ChangeGVBuffer: clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
: OGNLScript: property['GV_SMTP_ATTACHMENTS'] = property['GVFM_FOUND_FILES_LIST']&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;move_files&amp;quot;  &amp;lt;br/&amp;gt; operation-name=&amp;quot;SendEmail&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt; id=&amp;quot;move_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;end&amp;quot;  &amp;lt;br/&amp;gt;operation-name=&amp;quot;MoveAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end-nofiles&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Save the editor clicking on the Save icon of Eclipse. Control that there are not errors in the flow and save it in the apposite icon present in the Core View of {{L_VULCON}}. From the Project view, expand your project, refresh (f5), and right clicking the folder &amp;quot;conf&amp;quot; export your new configuration.&lt;br /&gt;
&lt;br /&gt;
=={{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
It is time to deploy and test your new Service. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} Configuration file as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click (Browse) and select the file where you saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TestFileAttachment a new view will be showed containing the files GVCore.xml present in local and on server side.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new services:&lt;br /&gt;
# Into the Service voice select TestFileAttachment&lt;br /&gt;
# Into the System voice select GVESB&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
The Testing View will be expanded and it is also possible to view the GVBuffer Output panel where there are present some properties, among these the GVFM_FOUND_FILES_NUM property set to 3, representing the number of files found. &lt;br /&gt;
&lt;br /&gt;
The file TestOutput.txt will be generated in the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log as previously set (see [[Testing]], [[data input]] area) containing information about the files found and the email already sent.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
----------- TEST N. 0 2012.02.15 at 18:02:32 -----------&lt;br /&gt;
Standard Field:&lt;br /&gt;
	system   = GVESB&lt;br /&gt;
	service  = EmailFileAttachment&lt;br /&gt;
	id       = 7F0001014F3BE51400059DBA&lt;br /&gt;
	retCode  = 0&lt;br /&gt;
GVBuffer: class java.lang.String&lt;br /&gt;
&lt;br /&gt;
Properties:&lt;br /&gt;
	messageID = &amp;lt;9388830.11329325352084.JavaMail.gv1@gv.com&amp;gt;&lt;br /&gt;
	GVFM_FOUND_FILES_LIST = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
	GVFM_FOUND_FILES_NUM = 3&lt;br /&gt;
	GV_SMTP_ATTACHMENTS = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set a new account with the properties:&amp;lt;br/&amp;gt;&lt;br /&gt;
Server SMTP/POP3&lt;br /&gt;
* SMTP : localhost:3025&lt;br /&gt;
* POP3: localhost:3110&lt;br /&gt;
* Server mailbox: gv1@gv.com (gv1/gv1)&lt;br /&gt;
* Client mailbox:  gv2@gv.com (gv2/gv2)&amp;lt;br/&amp;gt;gv3@gv.com (gv3/gv3)&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentEmail.jpg|thumb|TestFileAttachment email]]You will receive an email as this shown in the picture.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can also check that the files were moved into the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2311</id>
		<title>TestFileAttachment</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2311"/>
		<updated>2012-02-16T09:45:07Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Defining System, Channel and Operations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachment.jpg|thumb|TestFileAttachment description]]This example shows how to use {{GVESB}} to send an email containing attachments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TestFileAttachment service executes the following operations:&lt;br /&gt;
&lt;br /&gt;
* Reads a file from an input directory (TestAttach/input)&lt;br /&gt;
* Sends an email with this file as attachment&lt;br /&gt;
* Moves the sent file to another directory (TestAttach/sent)&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} Configuration==&lt;br /&gt;
&lt;br /&gt;
To configure TestFileAttachment service follow these steps:&lt;br /&gt;
# Define the [[System]], [[Channel]] and [[Operation|Operations]] required&lt;br /&gt;
# Define the [[Service|Services]]&lt;br /&gt;
# Implement the [[Flow|flows]].&lt;br /&gt;
&lt;br /&gt;
===Defining System, Channel and Operations===&lt;br /&gt;
&lt;br /&gt;
To define a System, go to {{VULCON}} core view and, into Systems element, insert the System GVESB if it is not already present. &lt;br /&gt;
From there create the Channel TEST_CHANNEL_FILE in which the following operations will be configured:&lt;br /&gt;
&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ScanAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileSearchCommand|FileSearchCommand]] &lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot; &lt;br /&gt;
:: returnFullPath=&amp;quot;true&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || MoveAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileMoveCommand|FileMoveCommand]]:&lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
:: targetPath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[smtp-call]] &lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| jndi-name || gvesb.mailServer&lt;br /&gt;
|-&lt;br /&gt;
| name || SendEmail&lt;br /&gt;
|-&lt;br /&gt;
| mail-message || content-type=&amp;quot;text-html&amp;quot; &amp;lt;br/&amp;gt; high-priority=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt; sender-display-name=&amp;quot;GV ESB&amp;quot;&amp;lt;br/&amp;gt;            subject=&amp;quot;Test send attachments&amp;quot;&lt;br /&gt;
: destinations:&lt;br /&gt;
:: to: &lt;br /&gt;
::: mail-address: address=&amp;quot;gv2@gv.com&amp;quot;&lt;br /&gt;
: message-body: gvBuffer-dump=&amp;quot;false&amp;quot;&lt;br /&gt;
:: message-text: ${'Attachment file list:\n'+property['GV_SMTP_ATTACHMENTS']}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Flow implementation===&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentFlow.jpg|thumb|TestFileAttachment flow]]To implement the TestFileAttachment service [[Flow]] design it as shown in the picture:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service searchs the files present in a directory, sends it as attachment and moves it into another directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following table shows the nodes and attributes to be defined:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| first-node || Prepare&lt;br /&gt;
|-&lt;br /&gt;
| Conditions/GVBufferCondition || condition=&amp;quot;FilesFound&amp;quot; type=&amp;quot;condition&amp;quot;&lt;br /&gt;
Property:&lt;br /&gt;
: name=&amp;quot;GVFM_FOUND_FILES_NUM&amp;quot;&lt;br /&gt;
: operator=&amp;quot;greater&amp;quot;&lt;br /&gt;
: type=&amp;quot;gvbuffer-field&amp;quot;&lt;br /&gt;
: value=&amp;quot;0&amp;quot;&lt;br /&gt;
: value-type=&amp;quot;integer&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt;id=&amp;quot;list_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_files&amp;quot;  &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;operation-name=&amp;quot;ScanAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;end-nofiles&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot;  &amp;lt;br/&amp;gt;on-exception-id=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;GVRouting:&lt;br /&gt;
: condition=&amp;quot;FilesFound&amp;quot;&lt;br /&gt;
: next-node-id=&amp;quot;prepare&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || dump-in-out=&amp;quot;true&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;prepare&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt; next-node-id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
ChangeGVBuffer: clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
: OGNLScript: property['GV_SMTP_ATTACHMENTS'] = property['GVFM_FOUND_FILES_LIST']&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;move_files&amp;quot;  &amp;lt;br/&amp;gt; operation-name=&amp;quot;SendEmail&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt; id=&amp;quot;move_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;end&amp;quot;  &amp;lt;br/&amp;gt;operation-name=&amp;quot;MoveAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end-nofiles&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Save the editor clicking on the Save icon of Eclipse. Control that there are not errors in the flow and save it in the apposite icon present in the Core View of {{L_VULCON}}. From the Project view, expand your project, refresh (f5), and right clicking the folder &amp;quot;conf&amp;quot; export your new configuration.&lt;br /&gt;
&lt;br /&gt;
=={{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
It is time to deploy and test your new Service. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} Configuration file as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Sfoglia... (Browse) and select the file where you have saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TestFileAttachment a new view will be open containing the files GVCore.xml present in local and in server.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new services:&lt;br /&gt;
# Into the Service voice select TestFileAttachment&lt;br /&gt;
# Into the System voice select GVESB&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
The Testing View will be expanded and it is also possible to view the GVBuffer Output panel where there are present some properties, among these the GVFM_FOUND_FILES_NUM property setted to 3, representing the number of files found. &lt;br /&gt;
&lt;br /&gt;
The file TestOutput.txt will be generated in the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log as previously setted (see [[Testing]], [[data input]] area) containing information about the files found and the email already sent.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
----------- TEST N. 0 2012.02.15 at 18:02:32 -----------&lt;br /&gt;
Standard Field:&lt;br /&gt;
	system   = GVESB&lt;br /&gt;
	service  = EmailFileAttachment&lt;br /&gt;
	id       = 7F0001014F3BE51400059DBA&lt;br /&gt;
	retCode  = 0&lt;br /&gt;
GVBuffer: class java.lang.String&lt;br /&gt;
&lt;br /&gt;
Properties:&lt;br /&gt;
	messageID = &amp;lt;9388830.11329325352084.JavaMail.gv1@gv.com&amp;gt;&lt;br /&gt;
	GVFM_FOUND_FILES_LIST = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
	GVFM_FOUND_FILES_NUM = 3&lt;br /&gt;
	GV_SMTP_ATTACHMENTS = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set a new account with the properties:&amp;lt;br/&amp;gt;&lt;br /&gt;
Server SMTP/POP3&lt;br /&gt;
* SMTP : localhost:3025&lt;br /&gt;
* POP3: localhost:3110&lt;br /&gt;
* Server mailbox: gv1@gv.com (gv1/gv1)&lt;br /&gt;
* Client mailbox:  gv2@gv.com (gv2/gv2)&amp;lt;br/&amp;gt;gv3@gv.com (gv3/gv3)&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentEmail.jpg|thumb|TestFileAttachment email]]You will receive an email as this shown in the picture.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can also check that the files where moved into the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2310</id>
		<title>TestFileAttachment</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=TestFileAttachment&amp;diff=2310"/>
		<updated>2012-02-16T09:43:41Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachment.jpg|thumb|TestFileAttachment description]]This example shows how to use {{GVESB}} to send an email containing attachments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TestFileAttachment service executes the following operations:&lt;br /&gt;
&lt;br /&gt;
* Reads a file from an input directory (TestAttach/input)&lt;br /&gt;
* Sends an email with this file as attachment&lt;br /&gt;
* Moves the sent file to another directory (TestAttach/sent)&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} Configuration==&lt;br /&gt;
&lt;br /&gt;
To configure TestFileAttachment service follow these steps:&lt;br /&gt;
# Define the [[System]], [[Channel]] and [[Operation|Operations]] required&lt;br /&gt;
# Define the [[Service|Services]]&lt;br /&gt;
# Implement the [[Flow|flows]].&lt;br /&gt;
&lt;br /&gt;
===Defining System, Channel and Operations===&lt;br /&gt;
&lt;br /&gt;
To define a System, go to {{VULCON}} core view and, into Systems element, insert the System GVESB if it is not already present. Inside of it create the Channel TEST_CHANNEL_FILE in which the following operations will be configured:&lt;br /&gt;
&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || ScanAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileSearchCommand|FileSearchCommand]] &lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot; &lt;br /&gt;
:: returnFullPath=&amp;quot;true&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[filemanager-call]]&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| name || MoveAttachments&lt;br /&gt;
FileCommands:&lt;br /&gt;
: [[Filemanager-call#FileMoveCommand|FileMoveCommand]]:&lt;br /&gt;
:: filePattern=&amp;quot;.*&amp;quot;&lt;br /&gt;
:: sourcePath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input&amp;quot;&lt;br /&gt;
:: targetPath=&amp;quot;&amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
* [[smtp-call]] &lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Value &lt;br /&gt;
|-&lt;br /&gt;
| jndi-name || gvesb.mailServer&lt;br /&gt;
|-&lt;br /&gt;
| name || SendEmail&lt;br /&gt;
|-&lt;br /&gt;
| mail-message || content-type=&amp;quot;text-html&amp;quot; &amp;lt;br/&amp;gt; high-priority=&amp;quot;true&amp;quot;&amp;lt;br/&amp;gt; sender-display-name=&amp;quot;GV ESB&amp;quot;&amp;lt;br/&amp;gt;            subject=&amp;quot;Test send attachments&amp;quot;&lt;br /&gt;
: destinations:&lt;br /&gt;
:: to: &lt;br /&gt;
::: mail-address: address=&amp;quot;gv2@gv.com&amp;quot;&lt;br /&gt;
: message-body: gvBuffer-dump=&amp;quot;false&amp;quot;&lt;br /&gt;
:: message-text: ${'Attachment file list:\n'+property['GV_SMTP_ATTACHMENTS']}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Flow implementation===&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentFlow.jpg|thumb|TestFileAttachment flow]]To implement the TestFileAttachment service [[Flow]] design it as shown in the picture:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service searchs the files present in a directory, sends it as attachment and moves it into another directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following table shows the nodes and attributes to be defined:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute/Subelement !! Value &lt;br /&gt;
|-&lt;br /&gt;
| first-node || Prepare&lt;br /&gt;
|-&lt;br /&gt;
| Conditions/GVBufferCondition || condition=&amp;quot;FilesFound&amp;quot; type=&amp;quot;condition&amp;quot;&lt;br /&gt;
Property:&lt;br /&gt;
: name=&amp;quot;GVFM_FOUND_FILES_NUM&amp;quot;&lt;br /&gt;
: operator=&amp;quot;greater&amp;quot;&lt;br /&gt;
: type=&amp;quot;gvbuffer-field&amp;quot;&lt;br /&gt;
: value=&amp;quot;0&amp;quot;&lt;br /&gt;
: value-type=&amp;quot;integer&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt;id=&amp;quot;list_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot; input=&amp;quot;input&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;check_files&amp;quot;  &amp;lt;br/&amp;gt;op-type=&amp;quot;call&amp;quot; &amp;lt;br/&amp;gt;operation-name=&amp;quot;ScanAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVNodeCheck || default-id=&amp;quot;end-nofiles&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;check_files&amp;quot; &amp;lt;br/&amp;gt; input=&amp;quot;files&amp;quot;  &amp;lt;br/&amp;gt;on-exception-id=&amp;quot;end&amp;quot;&amp;lt;br/&amp;gt;GVRouting:&lt;br /&gt;
: condition=&amp;quot;FilesFound&amp;quot;&lt;br /&gt;
: next-node-id=&amp;quot;prepare&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| ChangeGVBufferNode || dump-in-out=&amp;quot;true&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;prepare&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt; next-node-id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
ChangeGVBuffer: clear-data=&amp;quot;false&amp;quot;&lt;br /&gt;
: OGNLScript: property['GV_SMTP_ATTACHMENTS'] = property['GVFM_FOUND_FILES_LIST']&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;send_email&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;move_files&amp;quot;  &amp;lt;br/&amp;gt; operation-name=&amp;quot;SendEmail&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVOperationNode || dump-in-out=&amp;quot;false&amp;quot; &amp;lt;br/&amp;gt; id=&amp;quot;move_files&amp;quot; &amp;lt;br/&amp;gt;id-system=&amp;quot;GVESB&amp;quot;  &amp;lt;br/&amp;gt;input=&amp;quot;files&amp;quot; &amp;lt;br/&amp;gt;next-node-id=&amp;quot;end&amp;quot;  &amp;lt;br/&amp;gt;operation-name=&amp;quot;MoveAttachments&amp;quot;  &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end-nofiles&amp;quot; &amp;lt;br/&amp;gt;output=&amp;quot;files&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| GVEndNode || end-business-process=&amp;quot;yes&amp;quot;  &amp;lt;br/&amp;gt;id=&amp;quot;end&amp;quot; &amp;lt;br/&amp;gt; output=&amp;quot;files&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Save the editor clicking on the Save icon of Eclipse. Control that there are not errors in the flow and save it in the apposite icon present in the Core View of {{L_VULCON}}. From the Project view, expand your project, refresh (f5), and right clicking the folder &amp;quot;conf&amp;quot; export your new configuration.&lt;br /&gt;
&lt;br /&gt;
=={{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
It is time to deploy and test your new Service. To do that execute the following steps:&lt;br /&gt;
&lt;br /&gt;
[[File:GVCONSOLEDeploy.jpg|thumb|Deploy new Service]]Suppose you have saved the {{VULCON}} Configuration file as &amp;lt;nowiki&amp;gt;&amp;quot;${{gv.app.home}}/TEST/REPG1.zip&amp;quot;&amp;lt;/nowiki&amp;gt;. To deploy the new Service follow this steps:&lt;br /&gt;
# [[Starting|Start {{GVESB}}]]&lt;br /&gt;
# [[GV_Console#Access|Access to the {{GVCONSOLE}}]]. &lt;br /&gt;
# In the Deploy New Service section click Sfoglia... (Browse) and select the file where you have saved the {{VULCON}} configuration.&lt;br /&gt;
#`Click Submit.&lt;br /&gt;
&lt;br /&gt;
The section [[Deploy_Service|Deploy Services]] will be open. In this section you can select the services you want to deploy.&lt;br /&gt;
# Clicking on service TestFileAttachment a new view will be open containing the files GVCore.xml present in local and in server.&lt;br /&gt;
# Click Deploy. Now you can save the document and write some notes about it.&lt;br /&gt;
# Save the Document. By saving you will return to the [[Deploy Service]] section.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleUtilityReload1.jpg|thumb|{{GVCONSOLE}} Utility section]]Now pass to the {{GVCONSOLE}} section [[Utility]]. &lt;br /&gt;
# Click on [[Reload_Configuration|Reload configuration]]&lt;br /&gt;
# Select GVCore.xml and then Reload. A new windows will be open to confirm the operation&lt;br /&gt;
# Click OK.&lt;br /&gt;
&lt;br /&gt;
[[File:GVConsoleTesting.jpg|thumb|{{GVCONSOLE}} Testing section]]Go to the {{GVCONSOLE}} section [[Testing]]. In this section you can finally test your new services:&lt;br /&gt;
# Into the Service voice select TestFileAttachment&lt;br /&gt;
# Into the System voice select GVESB&lt;br /&gt;
# Click RequestReply&lt;br /&gt;
&lt;br /&gt;
The Testing View will be expanded and it is also possible to view the GVBuffer Output panel where there are present some properties, among these the GVFM_FOUND_FILES_NUM property setted to 3, representing the number of files found. &lt;br /&gt;
&lt;br /&gt;
The file TestOutput.txt will be generated in the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/log as previously setted (see [[Testing]], [[data input]] area) containing information about the files found and the email already sent.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
----------- TEST N. 0 2012.02.15 at 18:02:32 -----------&lt;br /&gt;
Standard Field:&lt;br /&gt;
	system   = GVESB&lt;br /&gt;
	service  = EmailFileAttachment&lt;br /&gt;
	id       = 7F0001014F3BE51400059DBA&lt;br /&gt;
	retCode  = 0&lt;br /&gt;
GVBuffer: class java.lang.String&lt;br /&gt;
&lt;br /&gt;
Properties:&lt;br /&gt;
	messageID = &amp;lt;9388830.11329325352084.JavaMail.gv1@gv.com&amp;gt;&lt;br /&gt;
	GVFM_FOUND_FILES_LIST = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                                &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
	GVFM_FOUND_FILES_NUM = 3&lt;br /&gt;
	GV_SMTP_ATTACHMENTS = &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/001.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/002.txt;&lt;br /&gt;
                              &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/input/003.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set a new account with the properties:&amp;lt;br/&amp;gt;&lt;br /&gt;
Server SMTP/POP3&lt;br /&gt;
* SMTP : localhost:3025&lt;br /&gt;
* POP3: localhost:3110&lt;br /&gt;
* Server mailbox: gv1@gv.com (gv1/gv1)&lt;br /&gt;
* Client mailbox:  gv2@gv.com (gv2/gv2)&amp;lt;br/&amp;gt;gv3@gv.com (gv3/gv3)&lt;br /&gt;
&lt;br /&gt;
[[File:GVExamplesTestFileAttachmentEmail.jpg|thumb|TestFileAttachment email]]You will receive an email as this shown in the picture.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can also check that the files where moved into the directory &amp;lt;nowiki&amp;gt;${{gv.app.home}}&amp;lt;/nowiki&amp;gt;/TEST/TESTFS/TestAttach/sent.&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2189</id>
		<title>Service</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2189"/>
		<updated>2012-02-13T15:54:23Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVESB}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Service_(systems_architecture) Service] is the provisioning of one or more functions ([[Operation|Operations]]) within a [[System]] environment. It refers to a group of software components that perform a specific business logic.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A {{GVESB}}'s service is identified by a unique name (id-service), belongs to a [[group]] and has an activation state and a number of clients enabled at its invocation (section [[Client]]).&lt;br /&gt;
&lt;br /&gt;
You can configure the conditions applied to the routing of Service's flows ([[Conditions]] section).&lt;br /&gt;
&lt;br /&gt;
The definitions used here are valid for all [[Flow|flows]] associated with service and overwrite any global definitions.&lt;br /&gt;
&lt;br /&gt;
[[File:VULCONService.jpg|thumb|Service configuration]]The Service element has the attributes:&lt;br /&gt;
* ''id-service'': The unique name of the service. Corresponds to the value contained in the 'service' field of the data buffer (GVBuffer).&lt;br /&gt;
* ''group-name'': Service group membership. Groups are defined in the [[Group]] section.&lt;br /&gt;
* ''service-activation'': Activation status of service. The status can be: &amp;lt;br/&amp;gt;- on: service is active.&amp;lt;br/&amp;gt;- paused: service is inactive, the asynchronous client's requests are taken in charge by {{GVESB}}. They will be served when the service return on state 'on'. &amp;lt;br/&amp;gt; - off: service is inactive and no request are taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version doesn't implement the state 'paused'.&amp;lt;br/&amp;gt; The attribute's default value is: on.&lt;br /&gt;
* ''creation-date'': Service creation date. The information in this field is purely descriptive and has no impact on the functionality of {{GVESB}}.&amp;lt;br/&amp;gt; This information will be used for the production of reports on configuration.&lt;br /&gt;
* ''brief-description'': Service description. This information will be used for the production of reports on configuration.&lt;br /&gt;
&lt;br /&gt;
and the subelements:&lt;br /&gt;
* Description,&lt;br /&gt;
* Operation,&lt;br /&gt;
* BpelOperation,&lt;br /&gt;
* AliasList,&lt;br /&gt;
* Conditions.&lt;br /&gt;
&lt;br /&gt;
==How to==&lt;br /&gt;
&lt;br /&gt;
You can insert a new ''Service'' from the Core view right clicking the [[Services]] element, Insert after (or Insert before), ''Service''.&lt;br /&gt;
It is also possible to create a new Service using the [[Wizard]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The respective part of the ''GVCore.xml'' configuration file becomes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;GVTEST&amp;quot; id-service=&amp;quot;Test&amp;quot; service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;sys-svc-id&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_FILE&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;Flow first-node=&amp;quot;call_Test&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
               ---&lt;br /&gt;
          &amp;lt;/Flow&amp;gt;&lt;br /&gt;
      &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2188</id>
		<title>Service</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2188"/>
		<updated>2012-02-13T15:53:44Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVESB}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Service_(systems_architecture) Service] is the provisioning of one or more functions ([[Operation|Operations]]) within a [[System]] environment. It refers to a group of software components that perform a specific business logic.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A {{GVESB}}'s service is identified by a unique name (id-service), belongs to a [[group]] and has an activation state and a number of clients enabled at its invocation (section [[Client]]).&lt;br /&gt;
&lt;br /&gt;
You can configure the conditions applied to the routing of Service's flows ([[Conditions]] section).&lt;br /&gt;
&lt;br /&gt;
The definitions used here are valid for all [[Flow|flows]] associated with service and overwrite any global definitions.&lt;br /&gt;
&lt;br /&gt;
[[File:VULCONService.jpg|thumb|Service configuration]]The Service element has the attributes:&lt;br /&gt;
* ''id-service'': The unique name of the service. Corresponds to the value contained in the 'service' field of the data buffer (GVBuffer).&lt;br /&gt;
* ''group-name'': Service group membership. Groups are defined in the [[Group]] section.&lt;br /&gt;
* ''service-activation'': Activation status of service. The status can be: &amp;lt;br/&amp;gt;- on: service is active.&amp;lt;br/&amp;gt;- paused: service is inactive, the asynchronous client's requests are taken in charge by {{GVESB}}. They will be served when the service return on state 'on'. &amp;lt;br/&amp;gt; - off: service is inactive and no request are taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version don't implement the state 'paused'.&amp;lt;br/&amp;gt; The attribute's default value is: on.&lt;br /&gt;
* ''creation-date'': Service creation date. The information in this field is purely descriptive and has no impact on the functionality of {{GVESB}}.&amp;lt;br/&amp;gt; This information will be used for the production of reports on configuration.&lt;br /&gt;
* ''brief-description'': Service description. This information will be used for the production of reports on configuration.&lt;br /&gt;
&lt;br /&gt;
and the subelements:&lt;br /&gt;
* Description,&lt;br /&gt;
* Operation,&lt;br /&gt;
* BpelOperation,&lt;br /&gt;
* AliasList,&lt;br /&gt;
* Conditions.&lt;br /&gt;
&lt;br /&gt;
==How to==&lt;br /&gt;
&lt;br /&gt;
You can insert a new ''Service'' from the Core view right clicking the [[Services]] element, Insert after (or Insert before), ''Service''.&lt;br /&gt;
It is also possible to create a new Service using the [[Wizard]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The respective part of the ''GVCore.xml'' configuration file becomes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;GVTEST&amp;quot; id-service=&amp;quot;Test&amp;quot; service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;sys-svc-id&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_FILE&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;Flow first-node=&amp;quot;call_Test&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
               ---&lt;br /&gt;
          &amp;lt;/Flow&amp;gt;&lt;br /&gt;
      &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2187</id>
		<title>Service</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2187"/>
		<updated>2012-02-13T15:53:17Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVESB}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Service_(systems_architecture) Service] is the provisioning of one or more functions ([[Operation|Operations]]) within a [[System]] environment. It refers to a group of software components that perform a specific business logic.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A {{GVESB}}'s service is identified by a unique name (id-service), belongs to a [[group]] and has an activation state and a number of clients enabled at its invocation (section [[Client]]).&lt;br /&gt;
&lt;br /&gt;
You can configure the conditions applied to the routing of Service's flows ([[Conditions]] section).&lt;br /&gt;
&lt;br /&gt;
The definitions used here are valid for all [[Flow|flows]] associated with service and overwrite any global definitions.&lt;br /&gt;
&lt;br /&gt;
[[File:VULCONService.jpg|thumb|Service configuration]]The Service element has the attributes:&lt;br /&gt;
* ''id-service'': The unique name of the service. Corresponds to the value contained in the 'service' field of the data buffer (GVBuffer).&lt;br /&gt;
* ''group-name'': Service group membership. Groups are defined in the [[Groups]] section.&lt;br /&gt;
* ''service-activation'': Activation status of service. The status can be: &amp;lt;br/&amp;gt;- on: service is active.&amp;lt;br/&amp;gt;- paused: service is inactive, the asynchronous client's requests are taken in charge by {{GVESB}}. They will be served when the service return on state 'on'. &amp;lt;br/&amp;gt; - off: service is inactive and no request are taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version don't implement the state 'paused'.&amp;lt;br/&amp;gt; The attribute's default value is: on.&lt;br /&gt;
* ''creation-date'': Service creation date. The information in this field is purely descriptive and has no impact on the functionality of {{GVESB}}.&amp;lt;br/&amp;gt; This information will be used for the production of reports on configuration.&lt;br /&gt;
* ''brief-description'': Service description. This information will be used for the production of reports on configuration.&lt;br /&gt;
&lt;br /&gt;
and the subelements:&lt;br /&gt;
* Description,&lt;br /&gt;
* Operation,&lt;br /&gt;
* BpelOperation,&lt;br /&gt;
* AliasList,&lt;br /&gt;
* Conditions.&lt;br /&gt;
&lt;br /&gt;
==How to==&lt;br /&gt;
&lt;br /&gt;
You can insert a new ''Service'' from the Core view right clicking the [[Services]] element, Insert after (or Insert before), ''Service''.&lt;br /&gt;
It is also possible to create a new Service using the [[Wizard]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The respective part of the ''GVCore.xml'' configuration file becomes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;GVTEST&amp;quot; id-service=&amp;quot;Test&amp;quot; service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;sys-svc-id&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_FILE&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;Flow first-node=&amp;quot;call_Test&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
               ---&lt;br /&gt;
          &amp;lt;/Flow&amp;gt;&lt;br /&gt;
      &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2186</id>
		<title>Service</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2186"/>
		<updated>2012-02-13T15:52:58Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVESB}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Service_(systems_architecture) Service] is the provisioning of one or more functions ([[Operation|Operations]]) within a [[System]] environment. It refers to a group of software components that perform a specific business logic.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A {{GVESB}}'s service is identified by a unique name (id-service), belongs to a [[group]] and has an activation state and a number of clients enabled at its invocation (section [[Clients]]).&lt;br /&gt;
&lt;br /&gt;
You can configure the conditions applied to the routing of Service's flows ([[Conditions]] section).&lt;br /&gt;
&lt;br /&gt;
The definitions used here are valid for all [[Flow|flows]] associated with service and overwrite any global definitions.&lt;br /&gt;
&lt;br /&gt;
[[File:VULCONService.jpg|thumb|Service configuration]]The Service element has the attributes:&lt;br /&gt;
* ''id-service'': The unique name of the service. Corresponds to the value contained in the 'service' field of the data buffer (GVBuffer).&lt;br /&gt;
* ''group-name'': Service group membership. Groups are defined in the [[Groups]] section.&lt;br /&gt;
* ''service-activation'': Activation status of service. The status can be: &amp;lt;br/&amp;gt;- on: service is active.&amp;lt;br/&amp;gt;- paused: service is inactive, the asynchronous client's requests are taken in charge by {{GVESB}}. They will be served when the service return on state 'on'. &amp;lt;br/&amp;gt; - off: service is inactive and no request are taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version don't implement the state 'paused'.&amp;lt;br/&amp;gt; The attribute's default value is: on.&lt;br /&gt;
* ''creation-date'': Service creation date. The information in this field is purely descriptive and has no impact on the functionality of {{GVESB}}.&amp;lt;br/&amp;gt; This information will be used for the production of reports on configuration.&lt;br /&gt;
* ''brief-description'': Service description. This information will be used for the production of reports on configuration.&lt;br /&gt;
&lt;br /&gt;
and the subelements:&lt;br /&gt;
* Description,&lt;br /&gt;
* Operation,&lt;br /&gt;
* BpelOperation,&lt;br /&gt;
* AliasList,&lt;br /&gt;
* Conditions.&lt;br /&gt;
&lt;br /&gt;
==How to==&lt;br /&gt;
&lt;br /&gt;
You can insert a new ''Service'' from the Core view right clicking the [[Services]] element, Insert after (or Insert before), ''Service''.&lt;br /&gt;
It is also possible to create a new Service using the [[Wizard]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The respective part of the ''GVCore.xml'' configuration file becomes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;GVTEST&amp;quot; id-service=&amp;quot;Test&amp;quot; service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;sys-svc-id&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_FILE&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;Flow first-node=&amp;quot;call_Test&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
               ---&lt;br /&gt;
          &amp;lt;/Flow&amp;gt;&lt;br /&gt;
      &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2185</id>
		<title>Service</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Service&amp;diff=2185"/>
		<updated>2012-02-13T15:52:15Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Service_(systems_architecture) Service] is the provisioning of one or more functions ([[Operation|Operations]]) within a [[System]] environment. It refers to a group of software components that perform a specific business logic.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A {{GVESB}}'s service is identified by a unique name (id-service), belongs to a group and has an activation state and a number of clients enabled at its invocation (section [[Clients]]).&lt;br /&gt;
&lt;br /&gt;
You can configure the conditions applied to the routing of Service's flows ([[Conditions]] section).&lt;br /&gt;
&lt;br /&gt;
The definitions used here are valid for all [[Flow|flows]] associated with service and overwrite any global definitions.&lt;br /&gt;
&lt;br /&gt;
[[File:VULCONService.jpg|thumb|Service configuration]]The Service element has the attributes:&lt;br /&gt;
* ''id-service'': The unique name of the service. Corresponds to the value contained in the 'service' field of the data buffer (GVBuffer).&lt;br /&gt;
* ''group-name'': Service group membership. Groups are defined in the [[Groups]] section.&lt;br /&gt;
* ''service-activation'': Activation status of service. The status can be: &amp;lt;br/&amp;gt;- on: service is active.&amp;lt;br/&amp;gt;- paused: service is inactive, the asynchronous client's requests are taken in charge by {{GVESB}}. They will be served when the service return on state 'on'. &amp;lt;br/&amp;gt; - off: service is inactive and no request are taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version don't implement the state 'paused'.&amp;lt;br/&amp;gt; The attribute's default value is: on.&lt;br /&gt;
* ''creation-date'': Service creation date. The information in this field is purely descriptive and has no impact on the functionality of {{GVESB}}.&amp;lt;br/&amp;gt; This information will be used for the production of reports on configuration.&lt;br /&gt;
* ''brief-description'': Service description. This information will be used for the production of reports on configuration.&lt;br /&gt;
&lt;br /&gt;
and the subelements:&lt;br /&gt;
* Description,&lt;br /&gt;
* Operation,&lt;br /&gt;
* BpelOperation,&lt;br /&gt;
* AliasList,&lt;br /&gt;
* Conditions.&lt;br /&gt;
&lt;br /&gt;
==How to==&lt;br /&gt;
&lt;br /&gt;
You can insert a new ''Service'' from the Core view right clicking the [[Services]] element, Insert after (or Insert before), ''Service''.&lt;br /&gt;
It is also possible to create a new Service using the [[Wizard]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The respective part of the ''GVCore.xml'' configuration file becomes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Service group-name=&amp;quot;GVTEST&amp;quot; id-service=&amp;quot;Test&amp;quot; service-activation=&amp;quot;on&amp;quot; statistics=&amp;quot;off&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Operation name=&amp;quot;RequestReply&amp;quot; operation-activation=&amp;quot;on&amp;quot; out-check-type=&amp;quot;sys-svc-id&amp;quot; type=&amp;quot;operation&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Participant id-channel=&amp;quot;TEST_CHANNEL_FILE&amp;quot; id-system=&amp;quot;GVESB&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;Flow first-node=&amp;quot;call_Test&amp;quot; point-x=&amp;quot;20&amp;quot; point-y=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
               ---&lt;br /&gt;
          &amp;lt;/Flow&amp;gt;&lt;br /&gt;
      &amp;lt;/Operation&amp;gt;&lt;br /&gt;
&amp;lt;/Service&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=System&amp;diff=2184</id>
		<title>System</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=System&amp;diff=2184"/>
		<updated>2012-02-13T15:51:24Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVESB}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
The '''System''' element is any system or application interconnected with {{GVESB}}.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A ''System'' is identified by an univocal name, has an activation state, and a number of communication interfaces grouped in [[channel|channels]].&lt;br /&gt;
Moreover, in order to simplify operational management, for each system you can define a list of contacts (see below).&lt;br /&gt;
&lt;br /&gt;
Its attributes are:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| id-system || required || System unique identifier.&lt;br /&gt;
|-&lt;br /&gt;
| system-activation || optional || Activation status of system. The status can be: &lt;br /&gt;
* on: system services are active.&lt;br /&gt;
* paused: system services are inactive, the asynchronous client requests are taken in charge by {{GVESB}}.  &amp;lt;br/&amp;gt;They will be served when the system returns on state 'on'. &lt;br /&gt;
* off: system services are inactive and no request is taken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version does not implement the state 'paused'. The attribute's default value is: on.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
and its subelements:&lt;br /&gt;
* Description&lt;br /&gt;
* [[Channel]]&lt;br /&gt;
* Contact (see bellow)&lt;br /&gt;
&lt;br /&gt;
The configurations of all systems interfaced to {{GVESB}} are contained in the element '''Systems'''.&lt;br /&gt;
&lt;br /&gt;
==Contact==&lt;br /&gt;
&lt;br /&gt;
This element identifies a ''contact'' for an external system. The information contained in this element are optional and have no impact on the {{GVESB}} functioning.&lt;br /&gt;
&lt;br /&gt;
Such information may be used to produce reports. &lt;br /&gt;
&lt;br /&gt;
The Contact Element is used only by ''System''.&lt;br /&gt;
&lt;br /&gt;
It has the following attributes:&lt;br /&gt;
&lt;br /&gt;
* ''first-name''&lt;br /&gt;
* ''last-name''&lt;br /&gt;
* ''role''&lt;br /&gt;
* ''mobile''&lt;br /&gt;
* ''telephone''&lt;br /&gt;
* ''e-mail''&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=System&amp;diff=2182</id>
		<title>System</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=System&amp;diff=2182"/>
		<updated>2012-02-13T15:48:02Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
The '''System''' element is any system or application interconnected with {{GVESB}}.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVESB}} Configuration==&lt;br /&gt;
&lt;br /&gt;
A ''System'' is identified by a single name, has an activation state, and a number of communication interfaces grouped in channels.&lt;br /&gt;
In addition to operational information for each system you can define a list of contacts (see bellow).&lt;br /&gt;
&lt;br /&gt;
Its attributes are:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| id-system || required || System unique identifier.&lt;br /&gt;
|-&lt;br /&gt;
| system-activation || optional || Activation status of system. The status can be: &lt;br /&gt;
* on: system's services are active.&lt;br /&gt;
* paused: system's services are inactive, the asynchronous client's requests are taken in charge by {{GVESB}}.  &amp;lt;br/&amp;gt;They will be served when the system return on state 'on'. &lt;br /&gt;
* off: system's services are inactive and no request are tacken in charge by {{GVESB}}. &amp;lt;br/&amp;gt; The current version does not implement the state 'paused'. The attribute's default value is: on.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
and its subelements:&lt;br /&gt;
* Description&lt;br /&gt;
* [[Channel]]&lt;br /&gt;
* Contact (see bellow)&lt;br /&gt;
&lt;br /&gt;
The configurations of all systems interfaced to {{GVESB}} are contained in the element '''Systems'''.&lt;br /&gt;
&lt;br /&gt;
==Contact==&lt;br /&gt;
&lt;br /&gt;
This element identifies a ''contact'' for an external system. The information contained in this element are optional and have no impact on the {{GVESB}} functioning.&lt;br /&gt;
&lt;br /&gt;
Such information may be used to produce reports. &lt;br /&gt;
&lt;br /&gt;
The Contact Element is used only by ''System''.&lt;br /&gt;
&lt;br /&gt;
It has the following attributes:&lt;br /&gt;
&lt;br /&gt;
* ''first-name''&lt;br /&gt;
* ''last-name''&lt;br /&gt;
* ''role''&lt;br /&gt;
* ''mobile''&lt;br /&gt;
* ''telephone''&lt;br /&gt;
* ''e-mail''&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2181</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2181"/>
		<updated>2012-02-13T15:46:16Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SERVICE SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
Let's start from a {{GVESB}} [[service]] &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafic data present in table ''Anagrafica''.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how to create an operation system section.&lt;br /&gt;
In the tag system let's define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOperations]]--&amp;gt;[[DBOperations|DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatter|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured.&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
This section shows the getAnagrafica service configuration.&lt;br /&gt;
To configure the [[service]] do the following steps:&lt;br /&gt;
#On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;.&lt;br /&gt;
#On the &amp;quot;request&amp;quot; node set db-call as operation&lt;br /&gt;
#As output-service set a xsl trasformation to transform the data as Web Service XSD expected.&lt;br /&gt;
To create a new trasformation go in section GvDataTrasformation and execute the following steps:&lt;br /&gt;
#On section Trasformation add new xsl trasformation&lt;br /&gt;
#On the opened page set:&lt;br /&gt;
##trasformation name:&amp;quot;getAnagrafica&amp;quot; &lt;br /&gt;
##Data source:Default&lt;br /&gt;
##xsd input: choose database.xsd&lt;br /&gt;
##root xsd input: RowSet (is the root element that return the query)&lt;br /&gt;
##xsd output: anagrafica.xsd (the schema that the Web Service expected)&lt;br /&gt;
##root XSD output: the root element of the xsd.&lt;br /&gt;
To create the xsl trasformation between the file Database.xsd and anagrafica.xsd you can use [[XML Data mapper]] tool&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:4buws.png|thumb|right|WebService Wizard fourth window]]&lt;br /&gt;
| [[File:5buws.png|thumb|right|WebService Wizard five window]]&lt;br /&gt;
| [[File:6buws.png|thumb|right|Xml data mapper]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Web Service wizard ==&lt;br /&gt;
On service element choose bottom-up development method, on the opened page set the following parameter:&lt;br /&gt;
*Web Service name: getAnagrafica&lt;br /&gt;
*Target namespace operation: http://www.greenvulcano.it/greenvulcano&lt;br /&gt;
*Operation to bind: choose getAnagrafica - RequestReply&lt;br /&gt;
*choose soap trasport as protocol&lt;br /&gt;
*set input type Web Service: body (this indicate that the input at getAnagrafica service is only the body of soap request)&lt;br /&gt;
*set data provider name: domWSDataProvider&lt;br /&gt;
If you are familiary with soapui framework you can test the web service, the image &amp;quot;WebService soapui test&amp;quot; show how to.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:7buws.png|thumb|right|WebService Wizard first window]]&lt;br /&gt;
| [[File:8buws.png|thumb|right|WebService Wizard second window]]&lt;br /&gt;
| [[File:9buws.png|thumb|right|WebService Wizard third window]]&lt;br /&gt;
| [[File:10buws.png|thumb|right|WebService soapui test]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2180</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2180"/>
		<updated>2012-02-13T15:45:25Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SYSTEM SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
Let's start from a {{GVESB}} [[service]] &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafic data present in table ''Anagrafica''.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how to create an operation system section.&lt;br /&gt;
In the tag system let's define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOperations]]--&amp;gt;[[DBOperations|DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatter|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured.&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
This section shows the getAnagrafica service configuration.&lt;br /&gt;
To configure the service performs the following steps:&lt;br /&gt;
#On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;.&lt;br /&gt;
#On the &amp;quot;request&amp;quot; node set db-call as operation&lt;br /&gt;
#As output-service set a xsl trasformation to transform the data as Web Service XSD expected.&lt;br /&gt;
To create a new trasformation go in section GvDataTrasformation and execute the following steps:&lt;br /&gt;
#On section Trasformation add new xsl trasformation&lt;br /&gt;
#On the opened page set:&lt;br /&gt;
##trasformation name:&amp;quot;getAnagrafica&amp;quot; &lt;br /&gt;
##Data source:Default&lt;br /&gt;
##xsd input: choose database.xsd&lt;br /&gt;
##root xsd input: RowSet (is the root element that return the query)&lt;br /&gt;
##xsd output: anagrafica.xsd (the schema that the Web Service expected)&lt;br /&gt;
##root XSD output: the root element of the xsd.&lt;br /&gt;
To create the xsl trasformation between the file Database.xsd and anagrafica.xsd you can use [[XML Data mapper]] tool&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:4buws.png|thumb|right|WebService Wizard fourth window]]&lt;br /&gt;
| [[File:5buws.png|thumb|right|WebService Wizard five window]]&lt;br /&gt;
| [[File:6buws.png|thumb|right|Xml data mapper]]&lt;br /&gt;
|}&lt;br /&gt;
== Web Service wizard ==&lt;br /&gt;
On service element choose bottom-up development method, on the opened page set the following parameter:&lt;br /&gt;
*Web Service name: getAnagrafica&lt;br /&gt;
*Target namespace operation: http://www.greenvulcano.it/greenvulcano&lt;br /&gt;
*Operation to bind: choose getAnagrafica - RequestReply&lt;br /&gt;
*choose soap trasport as protocol&lt;br /&gt;
*set input type Web Service: body (this indicate that the input at getAnagrafica service is only the body of soap request)&lt;br /&gt;
*set data provider name: domWSDataProvider&lt;br /&gt;
If you are familiary with soapui framework you can test the web service, the image &amp;quot;WebService soapui test&amp;quot; show how to.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:7buws.png|thumb|right|WebService Wizard first window]]&lt;br /&gt;
| [[File:8buws.png|thumb|right|WebService Wizard second window]]&lt;br /&gt;
| [[File:9buws.png|thumb|right|WebService Wizard third window]]&lt;br /&gt;
| [[File:10buws.png|thumb|right|WebService soapui test]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2179</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2179"/>
		<updated>2012-02-13T15:44:27Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Definition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
Let's start from a {{GVESB}} [[service]] &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafic data present in table ''Anagrafica''.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how create an operation system section.&lt;br /&gt;
In the tag system define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOperations]]--&amp;gt;[[DBOperations|DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatter|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
This section shows the getAnagrafica service configuration.&lt;br /&gt;
To configure the service performs the following steps:&lt;br /&gt;
#On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;.&lt;br /&gt;
#On the &amp;quot;request&amp;quot; node set db-call as operation&lt;br /&gt;
#As output-service set a xsl trasformation to transform the data as Web Service XSD expected.&lt;br /&gt;
To create a new trasformation go in section GvDataTrasformation and execute the following steps:&lt;br /&gt;
#On section Trasformation add new xsl trasformation&lt;br /&gt;
#On the opened page set:&lt;br /&gt;
##trasformation name:&amp;quot;getAnagrafica&amp;quot; &lt;br /&gt;
##Data source:Default&lt;br /&gt;
##xsd input: choose database.xsd&lt;br /&gt;
##root xsd input: RowSet (is the root element that return the query)&lt;br /&gt;
##xsd output: anagrafica.xsd (the schema that the Web Service expected)&lt;br /&gt;
##root XSD output: the root element of the xsd.&lt;br /&gt;
To create the xsl trasformation between the file Database.xsd and anagrafica.xsd you can use [[XML Data mapper]] tool&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:4buws.png|thumb|right|WebService Wizard fourth window]]&lt;br /&gt;
| [[File:5buws.png|thumb|right|WebService Wizard five window]]&lt;br /&gt;
| [[File:6buws.png|thumb|right|Xml data mapper]]&lt;br /&gt;
|}&lt;br /&gt;
== Web Service wizard ==&lt;br /&gt;
On service element choose bottom-up development method, on the opened page set the following parameter:&lt;br /&gt;
*Web Service name: getAnagrafica&lt;br /&gt;
*Target namespace operation: http://www.greenvulcano.it/greenvulcano&lt;br /&gt;
*Operation to bind: choose getAnagrafica - RequestReply&lt;br /&gt;
*choose soap trasport as protocol&lt;br /&gt;
*set input type Web Service: body (this indicate that the input at getAnagrafica service is only the body of soap request)&lt;br /&gt;
*set data provider name: domWSDataProvider&lt;br /&gt;
If you are familiary with soapui framework you can test the web service, the image &amp;quot;WebService soapui test&amp;quot; show how to.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:7buws.png|thumb|right|WebService Wizard first window]]&lt;br /&gt;
| [[File:8buws.png|thumb|right|WebService Wizard second window]]&lt;br /&gt;
| [[File:9buws.png|thumb|right|WebService Wizard third window]]&lt;br /&gt;
| [[File:10buws.png|thumb|right|WebService soapui test]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2161</id>
		<title>Roadmap</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2161"/>
		<updated>2012-02-13T14:28:13Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===RoadMap===&lt;br /&gt;
&lt;br /&gt;
The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Requests / Contributions from the community&lt;br /&gt;
* Specific needs of customers and developers&lt;br /&gt;
* Contributions of the partners / System Integrators&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our team adds its experience and expertise by offering innovative solutions in line with the vision that has always pushed us since our birth: simplicity and robustness.&lt;br /&gt;
&lt;br /&gt;
GreenVulcano remains thus attached to the &amp;quot;real world&amp;quot;, not in any way feeling the need to pursue or chasing at all costs the latest fashion trends of other products in the market.&lt;br /&gt;
&lt;br /&gt;
The Roadmap is updated by our software architects and checked every six months.&lt;br /&gt;
&lt;br /&gt;
===Version 3.2 (Q1 2012)===&lt;br /&gt;
&lt;br /&gt;
1) “Sub Flow” management&lt;br /&gt;
&lt;br /&gt;
2) BPEL Flows management &lt;br /&gt;
&lt;br /&gt;
3) Every-component-Wizard on [[VulCon]] designer &lt;br /&gt;
&lt;br /&gt;
4) Grafical Data Mapper&lt;br /&gt;
&lt;br /&gt;
5) Drools integration&lt;br /&gt;
&lt;br /&gt;
6) HL7 Adapter&lt;br /&gt;
&lt;br /&gt;
7) New Wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.3 (Q3 2012)===&lt;br /&gt;
&lt;br /&gt;
1) Parallel flows&lt;br /&gt;
&lt;br /&gt;
2) Grafical Try/Catch&lt;br /&gt;
&lt;br /&gt;
3) Deploy and test from VulCon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.4 (Q2 2013)===&lt;br /&gt;
&lt;br /&gt;
1) Grafical Debugger&lt;br /&gt;
&lt;br /&gt;
2) Service High availability and GV cluster management implementation&lt;br /&gt;
&lt;br /&gt;
3) EJB 3.0 and Spring based version release&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2158</id>
		<title>Roadmap</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2158"/>
		<updated>2012-02-13T14:24:15Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* RoadMap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===RoadMap===&lt;br /&gt;
&lt;br /&gt;
The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Requests / Contributions from the community&lt;br /&gt;
* Specific needs of customers and developers&lt;br /&gt;
* Contributions of the partners / System Integrators&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our team adds its experience and expertise by offering innovative solutions in line with the vision that has always pushed us since our birth: simplicity and robustness.&lt;br /&gt;
&lt;br /&gt;
GreenVulcano remains thus attached to the &amp;quot;real world&amp;quot;, not in any way feeling the need to pursue or chasing at all costs the latest fashion trends of other products in the market.&lt;br /&gt;
&lt;br /&gt;
The Roadmap is updated by our software architects and checked every six months.&lt;br /&gt;
&lt;br /&gt;
===Version 3.2 (Q1 2012)===&lt;br /&gt;
&lt;br /&gt;
1) “Sub Flow” management&lt;br /&gt;
&lt;br /&gt;
2) BPEL Flows management &lt;br /&gt;
&lt;br /&gt;
3) Every-component-Wizard on [[VulCon]] designer &lt;br /&gt;
&lt;br /&gt;
4) Grafical Data Mapper&lt;br /&gt;
&lt;br /&gt;
5) Drools integration&lt;br /&gt;
&lt;br /&gt;
6) HL7 Adapter&lt;br /&gt;
&lt;br /&gt;
7) New Wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.3 (Q3 2012)===&lt;br /&gt;
&lt;br /&gt;
1) Parallel flows&lt;br /&gt;
&lt;br /&gt;
2) Grafical Try/Catch&lt;br /&gt;
&lt;br /&gt;
3) Deploy and test from VulCon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.4 (Q1 2013)===&lt;br /&gt;
&lt;br /&gt;
1) Grafical Debugger&lt;br /&gt;
&lt;br /&gt;
2) TBD&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2157</id>
		<title>Roadmap</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Roadmap&amp;diff=2157"/>
		<updated>2012-02-13T14:23:31Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: Created page with &amp;quot;===RoadMap===  The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:  * Requests / Contributions from the community * Specific ne...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===RoadMap===&lt;br /&gt;
&lt;br /&gt;
The engagement of GreenVulcano is to evolve the integration platform basing on the following criteria:&lt;br /&gt;
&lt;br /&gt;
* Requests / Contributions from the community&lt;br /&gt;
* Specific needs of customers and developers&lt;br /&gt;
* Contributions of the partners / System Integrators&lt;br /&gt;
&lt;br /&gt;
Our team adds its experience and expertise by offering innovative solutions in line with the vision that has always pushed us since our birth: simplicity and robustness.&lt;br /&gt;
&lt;br /&gt;
GreenVulcano remains thus attached to the &amp;quot;real world&amp;quot;, not in any way feeling the need to pursue or chasing at all costs the latest fashion trends of other products in the market.&lt;br /&gt;
&lt;br /&gt;
The Roadmap is updated by our software architects and checked every six months.&lt;br /&gt;
&lt;br /&gt;
===Version 3.2 (Q1 2012)===&lt;br /&gt;
&lt;br /&gt;
1) “Sub Flow” management&lt;br /&gt;
&lt;br /&gt;
2) BPEL Flows management &lt;br /&gt;
&lt;br /&gt;
3) Every-component-Wizard on [[VulCon]] designer &lt;br /&gt;
&lt;br /&gt;
4) Grafical Data Mapper&lt;br /&gt;
&lt;br /&gt;
5) Drools integration&lt;br /&gt;
&lt;br /&gt;
6) HL7 Adapter&lt;br /&gt;
&lt;br /&gt;
7) New Wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.3 (Q3 2012)===&lt;br /&gt;
&lt;br /&gt;
1) Parallel flows&lt;br /&gt;
&lt;br /&gt;
2) Grafical Try/Catch&lt;br /&gt;
&lt;br /&gt;
3) Deploy and test from VulCon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Version 3.4 (Q1 2013)===&lt;br /&gt;
&lt;br /&gt;
1) Grafical Debugger&lt;br /&gt;
&lt;br /&gt;
2) TBD&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Adapters&amp;diff=2149</id>
		<title>Adapters</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Adapters&amp;diff=2149"/>
		<updated>2012-02-13T13:38:13Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
The {{GVESB}} adapters, from now on GVAdapters, provide the implementations for connecting to external systems.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
The following table shows the available GVAdapters and its application from user point of view: &lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Adapter !! Description&lt;br /&gt;
|-&lt;br /&gt;
| [[GVWebServices]] (aka Gvaxis2) || {{GVESB}} Web Services definition&lt;br /&gt;
|-&lt;br /&gt;
| [[GVHL7ListenerManager]] || Adapter for enabling inbound and outbound connections using the HL7 protocol&lt;br /&gt;
|-&lt;br /&gt;
| [[GVForwards]] (in GVCore.xml) || {{GVESB}} JMS Forward configuration.&lt;br /&gt;
|-&lt;br /&gt;
| EJB Core ||&lt;br /&gt;
|-&lt;br /&gt;
| [[GVJBPMConfiguration]] || &lt;br /&gt;
|-&lt;br /&gt;
| [[GVJbpmTaskListenerManager]] ||&lt;br /&gt;
|-&lt;br /&gt;
| [[GVConnectorConfiguration]] || {{GVESB}} client API configuration.&lt;br /&gt;
|-&lt;br /&gt;
| [[GVRulesConfigManager]] || Drools Rules set definition&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} has also implemented other support functions listed bellow:&lt;br /&gt;
* [[GVSQLErrorMapping]]&lt;br /&gt;
* [[GVDataSources]]&lt;br /&gt;
* [[GVHTTPAdapter]]&lt;br /&gt;
* [[GVJdbc]]&lt;br /&gt;
* [[GVJDBCConnectionBuilder]]&lt;br /&gt;
* [[GVDataProviderManager]]&lt;br /&gt;
* [[GVDataHandlerConfiguration]]&lt;br /&gt;
* [[GVExcelWorkbookConfiguration]]&lt;br /&gt;
* [[GVExcelCreatorConfiguration]]&lt;br /&gt;
* [[GVBIRTReportConfiguration]]&lt;br /&gt;
* [[GVAdapterOpenSpCoop]].&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVWebServices&amp;diff=2148</id>
		<title>GVWebServices</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVWebServices&amp;diff=2148"/>
		<updated>2012-02-13T13:35:02Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* {{VULCON}} / {{GVCONSOLE}} Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
The element GVWebServices allows to define the [[Web Services]] implemented by {{GVESB}}.&lt;br /&gt;
&lt;br /&gt;
=={{VULCON}} / {{GVCONSOLE}} Configuration==&lt;br /&gt;
&lt;br /&gt;
The GVWebServices Element is present in the {{VULCON}} Adapter view, as a GVAdapters subelement.&lt;br /&gt;
&lt;br /&gt;
The following table shows GVWebServices element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| version || fixed || This attribute must assume the value '''1.0'''.&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || This attribute must assume the value '''module'''.&lt;br /&gt;
|-&lt;br /&gt;
| name || fixed || This attribute must assume the value '''WEB_SERVICES'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#GreenVulcanoWebServices|GreenVulcanoWebServices]]&lt;br /&gt;
* [[GVWebServices#BusinessWebServices|BusinessWebServices]]&lt;br /&gt;
* [[GVWebServices#UDDI|UDDI]]&lt;br /&gt;
* [[GVWebServices#AxisExtra|AxisExtra]]&lt;br /&gt;
&lt;br /&gt;
===GreenVulcanoWebServices===&lt;br /&gt;
&lt;br /&gt;
This element represents the {{GVESB}} Web Services definition.&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* GreenVulcanoWebService&lt;br /&gt;
&lt;br /&gt;
====GreenVulcanoWebService====&lt;br /&gt;
&lt;br /&gt;
The key that identifies the service is given either by the field id-key, or by the triple [[system]]/[[service]]/[[operation]]:&lt;br /&gt;
* If this key is not satisfied we will use the default inputObjectDataProviders and outputObjectDataProviders &lt;br /&gt;
* If the defaults are not defined an exception will be thrown.&lt;br /&gt;
&lt;br /&gt;
The following table shows the GreenVulcanoWebService element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || This attribute must assume the value '''greenvulcanowebservice'''.&lt;br /&gt;
|-&lt;br /&gt;
| id-key || optional || The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| id-service || optional || Service&lt;br /&gt;
|-&lt;br /&gt;
| id-system || optional || System&lt;br /&gt;
|-&lt;br /&gt;
| id-primitive || required || Primitive to invoke. The attribute's admitted values are:&lt;br /&gt;
* Request&lt;br /&gt;
* RequestReply&lt;br /&gt;
* GetReply&lt;br /&gt;
* GetRequest&lt;br /&gt;
* SendReply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===BusinessWebServices===&lt;br /&gt;
&lt;br /&gt;
Business web services definition on Axis2.&lt;br /&gt;
&lt;br /&gt;
The following table shows the BusinessWebServices element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| wsdl-directory || required || Directory containing the generated WSDL for the services exposed through Axis2.&lt;br /&gt;
|-&lt;br /&gt;
| services-directory || required || Directory containing the services generated from a WSDL using Axis2.&lt;br /&gt;
|-&lt;br /&gt;
| authenticated-http-soap-address || optional || This is the default URL that is used to build the soap:&lt;br /&gt;
address for [[Web Services]] that require authentication exposed with http protocol.&lt;br /&gt;
This URL can be overridden on different services.&lt;br /&gt;
If not specified will be required to define it on the services.&lt;br /&gt;
The final URL will be formed by concatenating the name of the service: default-soap-address/service&lt;br /&gt;
|-&lt;br /&gt;
| authenticated-https-soap-address || optional || This is the default URL that is used in the build the soap:address for web services that require authentication exposed with https protocol.&lt;br /&gt;
This URL can be overridden on different services.&lt;br /&gt;
If not specified will be required to define it on the services.&lt;br /&gt;
The final URL will be formed by concatenating the name of the service: default-soap-address/service&lt;br /&gt;
|-&lt;br /&gt;
| http-soap-address || optional || This is the default URL that is used in the build the soap:address for web services that not require authentication exposed with http protocol.&lt;br /&gt;
This URL can be overridden on different services.&lt;br /&gt;
If not specified will be required to define it on the services.&lt;br /&gt;
The final URL will be formed by concatenating the name of the service: default-soap-address/service&lt;br /&gt;
|-&lt;br /&gt;
| https-soap-address || optional || This is the default URL that is used in the build the soap:address for web services that not require authentication exposed with https protocol.&lt;br /&gt;
This URL can be overridden on different services.&lt;br /&gt;
If not specified will be required to define it on the services.&lt;br /&gt;
The final URL will be formed by concatenating the name of the service: default-soap-address/service&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* WebService&lt;br /&gt;
&lt;br /&gt;
====WebService====&lt;br /&gt;
&lt;br /&gt;
This element allows to define a business web services.&lt;br /&gt;
&lt;br /&gt;
The following table shows the WebService element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| web-service || required || The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| force-https || optional || The attribute's admitted values are:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| soap-address || optional || Il soap:address will be exactly the here specified url.&lt;br /&gt;
As a difference with the default-soap-address, it won't be made any composition with the service name.&lt;br /&gt;
If default-soap-address is not specified, this is mandatory.&lt;br /&gt;
The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| input-xsd || optional || The path of the XSD that defines the types of input that will be declared in the generated WSDL.&lt;br /&gt;
May contain an absolute path or a relative path, in which case, is relative to &amp;lt;nowiki&amp;gt;${{gv.app.home}}/xmlconfig/xsds.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
May contain [[placeholders]]. May also include the types of output, in this case does not specify the parameter 'output-xsd'.&lt;br /&gt;
The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| output-xsd || optional || The path of the XSD that defines the types of output that will be declared in the generated WSDL.&lt;br /&gt;
May contain an absolute path or a relative path, in which case, is relative to &amp;lt;nowiki&amp;gt;${{gv.app.home}}/xsds.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
If not specified only the parameter 'input-xsd' will be used.&lt;br /&gt;
The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| targetNS-from-xsd || optional || Defines if the target namespace of the types in the WSDL shall be that specified in the XSD input. If &amp;quot;false&amp;quot;, the target namespace is: http://www.greenvulcano.it/greenvulcano&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|-&lt;br /&gt;
| useOriginalwsdl || optional || The attribute's admitted values are:&lt;br /&gt;
* true&lt;br /&gt;
* false&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#WSOperation|WSOperation]]&lt;br /&gt;
* [[GVWebServices#Transport|Transport]]&lt;br /&gt;
* [[GVWebServices#EngageModule|EngageModule]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====WSOperation=====&lt;br /&gt;
&lt;br /&gt;
This element defines the Web Service Operation.&lt;br /&gt;
&lt;br /&gt;
The following table shows the WSOperation element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| operation-qname || required || Qualified Name (QName) of the operation exposed by the web service. &lt;br /&gt;
If the namespace is present, it must be specified in braces:&lt;br /&gt;
{namespace}localname&lt;br /&gt;
|-&lt;br /&gt;
| soap-action || optional || MIME Header SOAPAction of the HTTP request.&lt;br /&gt;
If not specified is set to SERVICE/OPERATION &lt;br /&gt;
|-&lt;br /&gt;
| ref-dp || optional || DataProvider to be used for sending the reply to the caller.&lt;br /&gt;
The DataProvider will return a MessageContext to be sent as a reply.&lt;br /&gt;
If not used, the webservice adapter expects a org.apache.axiom.soap.SOAPEnvelope as a field object of GVBuffer.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
It has the subelements:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#Binding|Binding]]&lt;br /&gt;
* [[GVWebServices#PolicyData|PolicyData]]&lt;br /&gt;
&lt;br /&gt;
=====Binding=====&lt;br /&gt;
&lt;br /&gt;
Defined by the triple gv-system/gv-service/gv-operation.&lt;br /&gt;
&lt;br /&gt;
The following table shows the Binding element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| gv-service || required || ID service with which to perform the invocation of {{GVESB}}&lt;br /&gt;
|-&lt;br /&gt;
| gv-system || optional || ID system with which to perform the invocation of {{GVESB}}&lt;br /&gt;
|-&lt;br /&gt;
| gv-operation || required ||  {{GVESB}} operation to invoke.&lt;br /&gt;
|-&lt;br /&gt;
| transaction-timeout-secs || optional || Transaction timeout in seconds.&lt;br /&gt;
|-&lt;br /&gt;
| inputType || optional || Defines how to set the response data in the object field of output GVBuffer:&lt;br /&gt;
* context : the MessageContext &lt;br /&gt;
* envelope : the envelope as XML serialized as string &lt;br /&gt;
* body : the body as XML serialized as string &lt;br /&gt;
* body-element : the first child of body as XML serialized as string &lt;br /&gt;
* header : the header as XML serialized as string &lt;br /&gt;
* envelope-om : the envelope as OMMessage &lt;br /&gt;
* body-om : the body as OMMessage &lt;br /&gt;
* body-element-om : the first child of body as OMMessage &lt;br /&gt;
* header-om : the header as OMMessage&lt;br /&gt;
Default: context&lt;br /&gt;
|-&lt;br /&gt;
| transaction || optional || Indicates whether the invocation to be performed in {{GVESB}} is transactional or not.&lt;br /&gt;
The possible values are:&lt;br /&gt;
* none : The invocation is performed in non transactional mode.&lt;br /&gt;
* commit-before-reply : The invocation is performed in transactional mode and the commit is carried out immediately before returning the response to clients.&lt;br /&gt;
* commit-after-reply : The invocation is performed in transactional mode and the commit is carried out immediately after returning the response to clients.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====PolicyData=====&lt;br /&gt;
&lt;br /&gt;
This element is an XML that describes the policies for a specific. Currently it is used only for the WS-Security implemented by the module 'rampart'.&lt;br /&gt;
&lt;br /&gt;
Follows an example of policy to be included on the module 'rampart':&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;wsp:Policy wsu:Id=&amp;quot;UTOverTransport&amp;quot; xmlns:wsu=&amp;quot;http://docs.oasis-open.org/&lt;br /&gt;
        wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&amp;quot; &lt;br /&gt;
        xmlns:wsp=&amp;quot;http://schemas.xmlsoap.org/ws/2004/09/policy&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;wsp:ExactlyOne&amp;gt;&lt;br /&gt;
         &amp;lt;wsp:All&amp;gt;&lt;br /&gt;
             &amp;lt;sp:TransportBinding xmlns:sp=&amp;quot;http://schemas.xmlsoap.org/ws/2005/07/securitypolicy&amp;quot;&amp;gt;&lt;br /&gt;
                 &amp;lt;wsp:Policy&amp;gt;&lt;br /&gt;
                     &amp;lt;sp:TransportToken&amp;gt;&lt;br /&gt;
                         &amp;lt;wsp:Policy&amp;gt;&lt;br /&gt;
                             &amp;lt;sp:HttpsToken RequireClientCertificate=&amp;quot;false&amp;quot;/&amp;gt;&lt;br /&gt;
                         &amp;lt;/wsp:Policy&amp;gt;&lt;br /&gt;
                     &amp;lt;/sp:TransportToken&amp;gt;&lt;br /&gt;
                     &amp;lt;sp:AlgorithmSuite&amp;gt; &amp;lt;wsp:Policy&amp;gt; &amp;lt;sp:Basic256/&amp;gt; &amp;lt;/wsp:Policy&amp;gt; &amp;lt;/sp:AlgorithmSuite&amp;gt;&lt;br /&gt;
                     &amp;lt;sp:Layout&amp;gt; &amp;lt;wsp:Policy&amp;gt; &amp;lt;sp:Lax/&amp;gt; &amp;lt;/wsp:Policy&amp;gt; &amp;lt;/sp:Layout&amp;gt;&lt;br /&gt;
                     &amp;lt;sp:IncludeTimestamp/&amp;gt;&lt;br /&gt;
                 &amp;lt;/wsp:Policy&amp;gt;&lt;br /&gt;
             &amp;lt;/sp:TransportBinding&amp;gt;&lt;br /&gt;
             &amp;lt;sp:SignedSupportingTokens xmlns:sp=&amp;quot;http://schemas.xmlsoap.org/ws/2005/07/securitypolicy&amp;quot;&amp;gt;&lt;br /&gt;
                 &amp;lt;wsp:Policy&amp;gt;&lt;br /&gt;
                     &amp;lt;sp:UsernameTokensp: &lt;br /&gt;
                         IncludeToken=&amp;quot;http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient&amp;quot;/&amp;gt;&lt;br /&gt;
                 &amp;lt;/wsp:Policy&amp;gt; &lt;br /&gt;
             &amp;lt;/sp:SignedSupportingTokens&amp;gt;&lt;br /&gt;
             &amp;lt;ramp:RampartConfig xmlns:ramp=&amp;quot;http://ws.apache.org/rampart/policy&amp;quot;&amp;gt;&lt;br /&gt;
                 &amp;lt;ramp:user&amp;gt;alice&amp;lt;/ramp:user&amp;gt;&lt;br /&gt;
                 &amp;lt;ramp:passwordCallbackClass&amp;gt;org.apache.rampart.samples.policy.sample01.PWCBHandler&lt;br /&gt;
                 &amp;lt;/ramp:passwordCallbackClass&amp;gt;&lt;br /&gt;
             &amp;lt;/ramp:RampartConfig&amp;gt;&lt;br /&gt;
         &amp;lt;/wsp:All&amp;gt;&lt;br /&gt;
      &amp;lt;/wsp:ExactlyOne&amp;gt;&lt;br /&gt;
&amp;lt;/wsp:Policy&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The PolicyData Element is used by EngageModule, WSOperation.&lt;br /&gt;
&lt;br /&gt;
The following table shows the PolicyData element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| policy_key || required || Defines the key to set the policy for the service invocation.&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* rampartPolicy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====Transport=====&lt;br /&gt;
&lt;br /&gt;
Transport configured for webservices.&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* soap &lt;br /&gt;
* soap12 &lt;br /&gt;
* rest : with the attributes&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| verb || optional || The attribute's admitted values are:&lt;br /&gt;
* GET&lt;br /&gt;
* POST&lt;br /&gt;
* PUT&lt;br /&gt;
* DELETE&lt;br /&gt;
|}&lt;br /&gt;
* jms : with the attributes&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| connectionFactory || optional ||&lt;br /&gt;
|-&lt;br /&gt;
| initialContextFactory || optional || &lt;br /&gt;
|- &lt;br /&gt;
| jndiURL || optional ||&lt;br /&gt;
|-&lt;br /&gt;
| destination || optional ||&lt;br /&gt;
|-&lt;br /&gt;
| replyDestination || optional ||&lt;br /&gt;
|-&lt;br /&gt;
| destinationType || optional || The attribute's admitted values are:&lt;br /&gt;
* queue&lt;br /&gt;
* topic&lt;br /&gt;
|-&lt;br /&gt;
| contentType || optional || &lt;br /&gt;
|-&lt;br /&gt;
| bytesMessage || optional || &lt;br /&gt;
|-&lt;br /&gt;
| textMessage || optional ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====EngageModule=====&lt;br /&gt;
&lt;br /&gt;
The EngageModule Element is used by: AxisWebServiceInvoker and WebService.&lt;br /&gt;
&lt;br /&gt;
The following table shows the EngageModule element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| name || required || Defines the name of a module to hire to handle WS-*.&lt;br /&gt;
If set, takes precedence over the attribute 'specifications'.&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* rampart&lt;br /&gt;
* sandesha2&lt;br /&gt;
|-&lt;br /&gt;
| type || optional || Defines the class that implements the hander for the module to engage.&lt;br /&gt;
The attribute's default value is '''it.greenvulcano.gvesb.virtual.ws.module.DefaultModuleHandler'''.&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* it.greenvulcano.gvesb.virtual.ws.module.rampart.RampartModuleHandler&lt;br /&gt;
* it.greenvulcano.gvesb.virtual.ws.module.sandesha2.Sandesha2ModuleHandler&lt;br /&gt;
The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| specification || optional || The specification to implement, mandatory and other than 'NO-SPEC' if the name attribute is not declared.&lt;br /&gt;
The attribute's default value is: NO-SPEC.&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* NO-SPEC&lt;br /&gt;
* WS-Security&lt;br /&gt;
* WS-ReliableMessaging&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#PolicyData|PolicyData]]&lt;br /&gt;
* [[GVWebServices#ModuleProperty|ModuleProperty]]&lt;br /&gt;
&lt;br /&gt;
=====ModuleProperty=====&lt;br /&gt;
&lt;br /&gt;
This element set specific properties for the module to engage.&lt;br /&gt;
&lt;br /&gt;
For example, the property 'org.apache.axis2.addressing.AddressingConstants.DISABLE_OUTBOUND_ADDRESSING_VALIDATION' setted to 'true' prevents a fault if SOAPAction is not set.&lt;br /&gt;
&lt;br /&gt;
The following table shows the ModuleProperty element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| name || required || The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| value || required || The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| type || optional || The attribute's default value is: String.&lt;br /&gt;
The attribute's admitted values are:&lt;br /&gt;
* String&lt;br /&gt;
* Boolean&lt;br /&gt;
* Byte&lt;br /&gt;
* Short&lt;br /&gt;
* Int&lt;br /&gt;
* Long&lt;br /&gt;
* Float&lt;br /&gt;
* Double&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===UDDI===&lt;br /&gt;
&lt;br /&gt;
The UDDI Element is used by: GVWebServices.&lt;br /&gt;
&lt;br /&gt;
It has the subelements:&lt;br /&gt;
* Description&lt;br /&gt;
* JAXMLRegistry&lt;br /&gt;
* Proxy&lt;br /&gt;
&lt;br /&gt;
====JAXMLRegistry====&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} implementation for the UDDI Server JUDDI.&lt;br /&gt;
&lt;br /&gt;
The following table shows the JAXMLRegistry element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.j2ee.xmlRegistry.impl.RegistryImpl'''.&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || This attribute must assume the value '''xmlregistry'''.&lt;br /&gt;
|-&lt;br /&gt;
| id-registry || required || Unique identifier of XMLRegistry &lt;br /&gt;
|-&lt;br /&gt;
| query-url || required || URL definition to perform the query&lt;br /&gt;
|-&lt;br /&gt;
| publish-url || required || Definition of the URL to make the publication&lt;br /&gt;
|-&lt;br /&gt;
| user-name || optional || Defining the user name for authentication on the Registry&lt;br /&gt;
|-&lt;br /&gt;
| password || optional || Defining the password for authentication on the Registry. #Encrypted&lt;br /&gt;
|-&lt;br /&gt;
| organization-name || optional || Defining the desired organization's name on the Registry&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* Properties&lt;br /&gt;
&lt;br /&gt;
=====Properties=====&lt;br /&gt;
&lt;br /&gt;
List of the properties needed to access the UDDI server.&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* connectionFactory&lt;br /&gt;
* connectionProperty&lt;br /&gt;
&lt;br /&gt;
=====connectionFactory=====&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} Connection Factory.&lt;br /&gt;
&lt;br /&gt;
The following table show the connectionFactory element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| value || required || Full qualified name of the connection factory.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====connectionProperty=====&lt;br /&gt;
&lt;br /&gt;
Defines a property to access the UDDI server.&lt;br /&gt;
&lt;br /&gt;
The following table shows the connectionProperty element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| type || required || Property type.&lt;br /&gt;
|-&lt;br /&gt;
| name || required || Fully qualified interface name.&lt;br /&gt;
|-&lt;br /&gt;
| value || required || Fully qualified name of te implementation.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====Proxy=====&lt;br /&gt;
&lt;br /&gt;
This element defines the Proxy configuration.&lt;br /&gt;
&lt;br /&gt;
It is used by: [[Http-call#endpoint|endpoint]], '''UDDI''' and [[ws-call]].&lt;br /&gt;
&lt;br /&gt;
The following table shows the Proxy element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| host || required || Proxy server IP or name.&lt;br /&gt;
|-&lt;br /&gt;
| port || optional || Proxy server port. Default: 80&lt;br /&gt;
|-&lt;br /&gt;
| user || optional || User name.&lt;br /&gt;
|-&lt;br /&gt;
| password || optional || User password. #Encrypted&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===AxisExtra===&lt;br /&gt;
&lt;br /&gt;
The AxisExtra Element is used by: GVWebServices and it is visible from {{L_VULCON}} in the Adapter View.&lt;br /&gt;
&lt;br /&gt;
Its subelements are:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#PasswordCallback|PasswordCallback]]&lt;br /&gt;
&lt;br /&gt;
====PasswordCallback====&lt;br /&gt;
&lt;br /&gt;
Contains the PwCbBasicHandler items whose attributes are:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| type || fixed || This attribute must assume the value '''pwcb'''.&lt;br /&gt;
|-&lt;br /&gt;
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.ws.rampart.policy.pwcb.PwCbBasicHandler'''.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The PwCbBasicHandler Element contains the subelements:&lt;br /&gt;
* Description&lt;br /&gt;
* [[GVWebServices#UserDef|UserDef]]&lt;br /&gt;
&lt;br /&gt;
=====UserDef=====&lt;br /&gt;
&lt;br /&gt;
Each UserDef Element allows to define an User.&lt;br /&gt;
&lt;br /&gt;
The following table shows the UserDef element's attributes:&lt;br /&gt;
{|class=&amp;quot;gvtable&amp;quot;&lt;br /&gt;
! Attribute !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| name || required || The attribute's value can't be null.&lt;br /&gt;
|-&lt;br /&gt;
| password || required || #Encrypted&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Post_Installation&amp;diff=2147</id>
		<title>Post Installation</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=Post_Installation&amp;diff=2147"/>
		<updated>2012-02-13T13:32:56Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;After [[Installation]] and configuration previously described, make sure that, in case of *nix systems, the user with which {{GVESB}} will be executed  has permission for the following scripts:&lt;br /&gt;
&lt;br /&gt;
: $GV_HOME/bin/start_GreenV.sh&amp;lt;br/&amp;gt;&lt;br /&gt;
: $GV_HOME/bin/stop_GreenV.sh&amp;lt;br/&amp;gt;&lt;br /&gt;
: $JBOSS_HOME/bin/run.sh&amp;lt;br/&amp;gt;&lt;br /&gt;
: $JBOSS_HOME/bin/shutdown.sh&lt;br /&gt;
&lt;br /&gt;
'''Finalizing the installation'''&lt;br /&gt;
&lt;br /&gt;
If you have chosen to perform the installation by downloading the {{GVESB}} Package that does not include JBoss, you need to change some files with steps described below:&lt;br /&gt;
{| class=&amp;quot;note&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:info.png]]&lt;br /&gt;
| The ''jboss-service.xml'' is present in the following location: &lt;br /&gt;
: $GV_SERVER/conf &lt;br /&gt;
The variable gv.app.home defined in the script ''start'' indicates the home directory of the product.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Add the following lines to the file ''jboss-service.xml'':&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!-- GreenVulcano ESB library directory --&amp;gt;&lt;br /&gt;
&amp;lt;classpath codebase=&amp;quot;${gv.app.home}/application/lib&amp;quot; archives=&amp;quot;*&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
before&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;classpath codebase=&amp;quot;${jboss.server.lib.url}&amp;quot; archives=&amp;quot;*&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;classpath codebase=&amp;quot;${jboss.common.lib.url}&amp;quot; archives=&amp;quot;*&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Change in the file the ''bootstrap/profile.xml'' the configuration of the ''mbean'' ''BootstrapProfileFactory'' as follows:&lt;br /&gt;
{| class=&amp;quot;note&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:info.png]]&lt;br /&gt;
| The file ''profile.xml'' is present in the following path:&lt;br /&gt;
:$GV_SERVER/conf/bootstrap&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;bean name=&amp;quot;BootstrapProfileFactory&amp;quot; class=&amp;quot;org.jboss.system.server.profileservice.repository.StaticProfileFactory&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;bindingsURI&amp;quot;&amp;gt;${jboss.server.home.url}conf/bindingservice.beans&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;bootstrapURI&amp;quot;&amp;gt;${jboss.server.home.url}conf/jboss-service.xml&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;deployersURI&amp;quot;&amp;gt;${jboss.server.home.url}deployers&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;applicationURIs&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;list elementClass=&amp;quot;java.net.URI&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;value&amp;gt;${jboss.server.home.url}deploy&amp;lt;/value&amp;gt;&lt;br /&gt;
            &amp;lt;!-- GreenVulcano ESB deployment directory --&amp;gt;&lt;br /&gt;
            &amp;lt;value&amp;gt;file://${gv.app.home}/application/deploy&amp;lt;/value&amp;gt;&lt;br /&gt;
         &amp;lt;/list&amp;gt;&lt;br /&gt;
      &amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;attachmentStoreRoot&amp;quot;&amp;gt;${jboss.server.data.dir}/attachments&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;property name=&amp;quot;profileFactory&amp;quot;&amp;gt;&amp;lt;inject bean=&amp;quot;ProfileFactory&amp;quot; /&amp;gt;&amp;lt;/property&amp;gt;&lt;br /&gt;
&amp;lt;/bean&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modify the file ''login-config.xml'' as follows:&lt;br /&gt;
{| class=&amp;quot;note&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:info.png]]&lt;br /&gt;
| The file ''login-config.xml'' is present in the following path:&lt;br /&gt;
:$GV_SERVER/conf&lt;br /&gt;
The files ''*.properties'' are present in the following path:&lt;br /&gt;
:$GV_HOME/xmlconfig&lt;br /&gt;
The ''OdeHsqlDbRealm'' needs a DataSource registered with name ''ds.ode'' usually configured in:&lt;br /&gt;
:$GV_HOME/application/deploy/gvesb-db-ds.xml&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;application-policy name=&amp;quot;gvesb&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;authentication&amp;gt;&lt;br /&gt;
        &amp;lt;login-module code=&amp;quot;org.jboss.security.auth.spi.UsersRolesLoginModule&amp;quot;&lt;br /&gt;
                      flag=&amp;quot;required&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name=&amp;quot;usersProperties&amp;quot;&amp;gt;gvesb-users.properties&amp;lt;/module-option&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name=&amp;quot;rolesProperties&amp;quot;&amp;gt;gvesb-roles.properties&amp;lt;/module-option&amp;gt;&lt;br /&gt;
        &amp;lt;/login-module&amp;gt;&lt;br /&gt;
    &amp;lt;/authentication&amp;gt;&lt;br /&gt;
&amp;lt;/application-policy&amp;gt;&lt;br /&gt;
&amp;lt;application-policy name = &amp;quot;OdeHsqlDbRealm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;authentication&amp;gt;&lt;br /&gt;
        &amp;lt;login-module code = &amp;quot;org.jboss.resource.security.ConfiguredIdentityLoginModule&amp;quot;&lt;br /&gt;
                      flag = &amp;quot;required&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name = &amp;quot;principal&amp;quot;&amp;gt;ode&amp;lt;/module-option&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name = &amp;quot;userName&amp;quot;&amp;gt;ode&amp;lt;/module-option&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name = &amp;quot;password&amp;quot;&amp;gt;ode&amp;lt;/module-option&amp;gt;&lt;br /&gt;
            &amp;lt;module-option name = &amp;quot;managedConnectionFactoryName&amp;quot;&amp;gt;jboss.jca:service=LocalTxCM,name=ds.ode&amp;lt;/module-option&amp;gt;&lt;br /&gt;
        &amp;lt;/login-module&amp;gt;&lt;br /&gt;
    &amp;lt;/authentication&amp;gt;&lt;br /&gt;
&amp;lt;/application-policy&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;note&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:info.png]]&lt;br /&gt;
| The third part configurable components, in order to be integrated with {{GVESB}}, &amp;lt;br/&amp;gt;can be copied in the following directory: &lt;br /&gt;
: $GV_HOME/application/deploy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
When the installation procedure described above is finished, the file system will be structured as follows:&lt;br /&gt;
::'''$GV_HOME/'''&lt;br /&gt;
:::'''application/'''&lt;br /&gt;
::::'''deploy/''': contains the application components (ejb, war, ear) and the configuration files of the application server (JBoss) resources.&lt;br /&gt;
::::'''lib/'''   : contains the {{GVESB}} support libraries.&lt;br /&gt;
:::'''BIRTReportEngine/''' :contains BIRT report definitions &lt;br /&gt;
:::'''BpelProcess/''' :contains ODE BPEL prosess definitions &lt;br /&gt;
:::'''doc/'''&lt;br /&gt;
::::'''extra/'''    : contains the configuration files fragments and DDL scripts to enable logging, statistics and savepoints on various DataBases&lt;br /&gt;
::::'''licenses/''' : contains the license of the libraries used by {{GVESB}} &lt;br /&gt;
::::'''reference/''': contains the PDF files that are the {{GVESB}} configuration reference guides and XSD files that describe the internal structure of some {{GVESB}} XML&lt;br /&gt;
:::'''dtds/'''   : contains the dtds used by {{L_GVCONSOLE}}/{{L_VULCON}} to validate the {{GVESB}} configuration&lt;br /&gt;
:::'''gvconsole/''': contains the {{L_GVCONSOLE}} work files and the configurations back-up&lt;br /&gt;
::::'''etc/'''&lt;br /&gt;
::::'''lock/'''&lt;br /&gt;
:::'''gvdte/'''  : contains the transformations maps used by the {{GVESB}} DTE (Data Transformation Engine).&lt;br /&gt;
::::'''datasource/'''&lt;br /&gt;
:::::'''bin/'''  : contains the maps for binary transformation (binary buffers &amp;lt;-&amp;gt; XML)&lt;br /&gt;
:::::'''xsl/'''  : contains the maps for XSL transformations&lt;br /&gt;
:::::'''xsd/'''  : contains the XSD file used to validate the transformations input/output &lt;br /&gt;
:::'''log/'''    : contains the log files of the various {{GVESB}} subsystems, differentiated by the subsystem name and day. In this directory are generated the dumps of input/output buffers of services invoked by {{L_GVCONSOLE}}&lt;br /&gt;
:::'''Rules/''' : Drools rules definition files&lt;br /&gt;
:::'''webservices/'''&lt;br /&gt;
::::'''modules/'''  : contains the MAR files that defines the extra modules for AXIS services&lt;br /&gt;
::::'''services/''' : contains the AAR files that defines the WebService published by {{GVESB}}&lt;br /&gt;
:::'''xmlconfig/''': contains the {{GVESB}} configuration XML files and the license enabling the adapters for the Enterprise version.&lt;br /&gt;
::::'''js/'''      : contains the JavaScript files used to create pre-configured execution contexts&lt;br /&gt;
::::'''wsdl/'''    : contains the WSDL files of the WebService published and invoked by {{GVESB}}&lt;br /&gt;
::::'''xsds/'''    : contains the XSD files used in the WSDL service published by {{GVESB}} and the validation of XML documents.&lt;br /&gt;
&lt;br /&gt;
::'''$JBOSS_HOME/'''&lt;br /&gt;
:::'''bin/'''&lt;br /&gt;
:::'''client/'''&lt;br /&gt;
:::'''common/'''&lt;br /&gt;
:::'''docs/'''&lt;br /&gt;
:::'''lib/'''&lt;br /&gt;
:::'''server/'''&lt;br /&gt;
::::'''GreenV/''' --&amp;gt; alias '''$GV_SERVER'''&lt;br /&gt;
:::::'''conf/'''&lt;br /&gt;
:::::'''deploy/'''&lt;br /&gt;
:::::'''lib/'''&lt;br /&gt;
:::::'''lib/''' : JBoss server log directory&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2146</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2146"/>
		<updated>2012-02-13T13:30:45Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SERVICE SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We start from a {{GVESB}} service &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafica presents in table Anagrafica.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how create an operation system section.&lt;br /&gt;
In the tag system define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOoperation]]--&amp;gt;[[DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatters|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
&lt;br /&gt;
This section shows the getAnagrafica service configuration. On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:4buws.png|thumb|left|WebService Wizard fourth window]]&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2145</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2145"/>
		<updated>2012-02-13T13:30:17Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SERVICE SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We start from a {{GVESB}} service &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafica presents in table Anagrafica.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how create an operation system section.&lt;br /&gt;
In the tag system define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOoperation]]--&amp;gt;[[DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatters|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
&lt;br /&gt;
[[File:4buws.png|thumb|left|WebService Wizard fourth window]]&lt;br /&gt;
This section shows the getAnagrafica service configuration. On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2144</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2144"/>
		<updated>2012-02-13T13:29:54Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SERVICE SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We start from a {{GVESB}} service &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafica presents in table Anagrafica.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how create an operation system section.&lt;br /&gt;
In the tag system define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOoperation]]--&amp;gt;[[DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatters|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
&lt;br /&gt;
[[File:4buws.png|thumb|WebService Wizard fourth window]]&lt;br /&gt;
This section shows the getAnagrafica service configuration. On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2143</id>
		<title>GetAnagrafica ws bottom-up method</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GetAnagrafica_ws_bottom-up_method&amp;diff=2143"/>
		<updated>2012-02-13T13:29:30Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* SYSTEM SECTION */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We start from a {{GVESB}} service &amp;quot;getAnagrafica&amp;quot; that simply returns the anagrafica presents in table Anagrafica.&lt;br /&gt;
&lt;br /&gt;
== SYSTEM SECTION ==&lt;br /&gt;
The first image shows how create an operation system section.&lt;br /&gt;
In the tag system define a new Channel &amp;quot;CH_DB&amp;quot; and add a [[db-call]] operation, in [[db-call]] operation set the parameters for the Element DBOoperation, Statement and ResultSet:&lt;br /&gt;
*[[DBOoperation]]--&amp;gt;[[DataSourceConnection]]&lt;br /&gt;
**jndi-name: insert the name of jndi DataSource in this example ds.anagrafica&lt;br /&gt;
*Statement&lt;br /&gt;
**StatementValue: in this field insert the following query &amp;quot;select cognome,nome,citta from anagrafica&amp;quot;&lt;br /&gt;
*[[ResultSet]]--&amp;gt;[[Formatters|QueryFormatter]]&lt;br /&gt;
**type: choose base_formatter&lt;br /&gt;
**structure: ONLY_DATA, remember if you don't want also metadata form query select for filed structure the value ONLY_DATA&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[File:1buws.png|thumb|WebService Wizard first window]]&lt;br /&gt;
| [[File:2buws.png|thumb|WebService Wizard second window]]&lt;br /&gt;
| [[File:3buws.png|thumb|WebService Wizard third window]]&lt;br /&gt;
|}&lt;br /&gt;
The system section has been configured&lt;br /&gt;
&lt;br /&gt;
== SERVICE SECTION ==&lt;br /&gt;
&lt;br /&gt;
[[File:4buws.png|thumb|WebService Wizard fourth window]]&lt;br /&gt;
This section show the getAnagrafica service configuration. On the elements [[Service]] add a service with name &amp;quot;getAnagrafica&amp;quot;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1949</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1949"/>
		<updated>2012-02-10T16:13:47Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Inbound HL7 Connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-ChannelHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-ServizioHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[File:TrasfHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-Mapping.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[File:1100px-ListnerHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[File:1100px-ListenerServiceHl7.png|thumb|center|256px]]&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1948</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1948"/>
		<updated>2012-02-10T16:13:22Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Outbound HL7 connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-ChannelHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-ServizioHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[File:TrasfHl7.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
[[File:1100px-Mapping.png|thumb|center|256px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[File:1100px-ListnerHl7.png|thumb|center|512px]]&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[File:1100px-ListenerServiceHl7.png|thumb|center|512px]]&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1773</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1773"/>
		<updated>2012-02-09T16:00:43Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1765</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1765"/>
		<updated>2012-02-09T15:52:32Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Inbound HL7 Connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png | thumb]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1763</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1763"/>
		<updated>2012-02-09T15:51:57Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Outbound HL7 connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1762</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1762"/>
		<updated>2012-02-09T15:51:19Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Outbound HL7 connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png | thumb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVBuffer&amp;diff=1727</id>
		<title>GVBuffer</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=GVBuffer&amp;diff=1727"/>
		<updated>2012-02-09T13:39:41Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
The GVBuffer data structure (it.greenvulcano.gvesb.buffer.GVBuffer) represents the container that carries information within the components of {{GVESB}}:&lt;br /&gt;
&lt;br /&gt;
Inbund Adapter &amp;lt;-&amp;gt; Core &amp;lt;-&amp;gt; Plug-in outbound&lt;br /&gt;
&lt;br /&gt;
The business information traveling in the 'object', the GVBuffer data structure can contain any visual data type: JMS messages, SOAP Envelope, Document, strings, arrays of bytes, etc..&lt;br /&gt;
The data structure contains properties specific of {{GVESB}} platform :&lt;br /&gt;
*[[Service]]: service invoked&lt;br /&gt;
*[[System]]: the system client identifier that invokes the service&lt;br /&gt;
*Id: the identifier of the particular transaction (eg, to identify the response of a specific asynchronous request)&lt;br /&gt;
*RetCode: return code of the service invocation (possibly defined by contract client / server for a specific service)&lt;br /&gt;
GVBuffer The data structure also offers the ability to define and modify the properties specific service within the workflow to be used by JavaScript and / or OGNL and conditions as routing.&lt;br /&gt;
&lt;br /&gt;
==Structure==&lt;br /&gt;
[[File:GVBuffer.png|thumb|WebService Wizard first window]]&lt;br /&gt;
&lt;br /&gt;
{{GVBUFFER}}s have all the same shape, based on three primary components, the following image describe this components.&lt;br /&gt;
*Platform fields, this buffer section contains all information to indentify the flow &lt;br /&gt;
*Properties, this section contains an object thats maps keys to values. This object cannot contain duplicate keys; each key can map to at most one value. &lt;br /&gt;
*Payload, This buffer section contains all information to indentify the flow&lt;br /&gt;
&lt;br /&gt;
A single service can have more GvBuffer, each operation (node) in a Greenvulcano service can declare a {{GVBUFFER}} as input and/or output operation. A {{GVBUFFER}} can be also overwritten by another operation. To define a {{GVBUFFER}} simply insert its identifier as input or output node's property.&lt;br /&gt;
&lt;br /&gt;
====Example====&lt;br /&gt;
In the example below is shown a flow composed of Four nodes. The first one presents an incoming {{GVBUFFER}} associated to the identifier 'to_process'; the result of the node will be into another {{GVBUFFER}} associated to the identifier 'data'. Subsequent nodes will work on the same buffer ('data'), which will be the output parameter of the &amp;lt;GVEndNode&amp;gt;: so information in it will be delivered to the client.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;XML&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;Flow first-node=&amp;quot;extract_data&amp;quot; point-x=&amp;quot;19&amp;quot; point-y=&amp;quot;137&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                        dump-in-out=&amp;quot;false&amp;quot; id=&amp;quot;extract_data&amp;quot;&lt;br /&gt;
                        id-system=&amp;quot;CREDIT&amp;quot; input=&amp;quot;to_process&amp;quot;&lt;br /&gt;
                        next-node-id=&amp;quot;add_ext&amp;quot; op-type=&amp;quot;call&amp;quot;&lt;br /&gt;
                        operation-name=&amp;quot;CreditCards&amp;quot; output=&amp;quot;data&amp;quot;&lt;br /&gt;
                        point-x=&amp;quot;149&amp;quot; point-y=&amp;quot;140&amp;quot; type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ChangeGVBufferNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.ChangeGVBufferNode&amp;quot;&lt;br /&gt;
                        dump-in-out=&amp;quot;false&amp;quot; id=&amp;quot;add_ext&amp;quot; input=&amp;quot;data&amp;quot;&lt;br /&gt;
                        next-node-id=&amp;quot;send_email&amp;quot;&lt;br /&gt;
                        op-type=&amp;quot;change GVBuffer&amp;quot; point-x=&amp;quot;309&amp;quot;&lt;br /&gt;
                        point-y=&amp;quot;137&amp;quot; type=&amp;quot;flow-node&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;ChangeGVBuffer clear-data=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;PropertyDef name=&amp;quot;FILE_EXT&amp;quot;&lt;br /&gt;
                            value=&amp;quot;decode{{ognl{{property[&amp;amp;apos;BIRT_REPORT_TYPE&amp;amp;apos;]}}::excel::xls::pdf}}&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/ChangeGVBuffer&amp;gt;&lt;br /&gt;
    &amp;lt;/ChangeGVBufferNode&amp;gt;&lt;br /&gt;
    &amp;lt;GVOperationNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVOperationNode&amp;quot;&lt;br /&gt;
                        dump-in-out=&amp;quot;false&amp;quot; id=&amp;quot;send_email&amp;quot;&lt;br /&gt;
                        id-system=&amp;quot;CREDIT&amp;quot; input=&amp;quot;data&amp;quot;&lt;br /&gt;
                        next-node-id=&amp;quot;end&amp;quot; op-type=&amp;quot;call&amp;quot;&lt;br /&gt;
                        operation-name=&amp;quot;SendEmailSVCResponse&amp;quot;&lt;br /&gt;
                        output=&amp;quot;data&amp;quot; point-x=&amp;quot;473&amp;quot; point-y=&amp;quot;137&amp;quot;&lt;br /&gt;
                        type=&amp;quot;flow-node&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;GVEndNode class=&amp;quot;it.greenvulcano.gvesb.core.flow.GVEndNode&amp;quot;&lt;br /&gt;
                end-business-process=&amp;quot;yes&amp;quot; id=&amp;quot;end&amp;quot; op-type=&amp;quot;end&amp;quot;&lt;br /&gt;
                output=&amp;quot;data&amp;quot; point-x=&amp;quot;671&amp;quot; point-y=&amp;quot;137&amp;quot;&lt;br /&gt;
                type=&amp;quot;flow-node&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;ChangeGVBuffer clear-data=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/GVEndNode&amp;gt;&lt;br /&gt;
&amp;lt;/Flow&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1724</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1724"/>
		<updated>2012-02-09T13:30:09Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Inbound HL7 Connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listener, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1723</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1723"/>
		<updated>2012-02-09T13:29:39Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Outbound HL7 connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a transformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listner, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1722</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1722"/>
		<updated>2012-02-09T13:28:41Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* Outbound HL7 connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to define a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a tranformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listner, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
	<entry>
		<id>https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1720</id>
		<title>HL7</title>
		<link rel="alternate" type="text/html" href="https://gvwiki.greenvulcano.com/gvwiki/index.php?title=HL7&amp;diff=1720"/>
		<updated>2012-02-09T13:27:52Z</updated>

		<summary type="html">&lt;p&gt;G.iannello: /* HL7 Connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
[http://www.hl7.org/ HL7] is a standard for the exchange, integration, sharing and retrieval of electronic health information. The standard defines how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems. HL7 standards support clinical practice and the management, delivery, and evaluation of health services, and are recognized as the most commonly used in the world.&lt;br /&gt;
&lt;br /&gt;
* Created to exchange information related to patients&lt;br /&gt;
* Standardizes the health system at clinical data exchange level&lt;br /&gt;
* Provides interfaces that allow the data flow through various systems&lt;br /&gt;
* Makes the health interoperability possible&lt;br /&gt;
&lt;br /&gt;
==Message structure==&lt;br /&gt;
A HL7 message is composed by segments placed in a specific order. Each message is made up of a certain number of different segments (some are optional) that, combined, form a determined message type. A specific segment, identified by a code and a sequence number, represents a logic group of data fields and can be used only once within a specific message.&lt;br /&gt;
&lt;br /&gt;
==HL7 Connector==&lt;br /&gt;
The {{GVESB}} HL7 connector enables the inbound and outbound connections using the HL7 protocol in its version 2.x.&lt;br /&gt;
The use of the connector joint with the peculiarities of the {{GVESB}} [[Virtual Layer]] allows the management of HL7 applications in a simple and efficient way, separating the logic of the process implementation from the specific management of the messages and their structure, independently from the HL7 standard used. &lt;br /&gt;
&lt;br /&gt;
Basically the connector allows the virtualization of the input/output operations to a HL7 application, making available to the service definition process the interfaces able to hide all the technical details related to HL7 standard. It is possible to define the message exchange mode transforming with a mapping operation the HL7 messages in XML messages, using any schema. The composition of the integration flow will comprise a data structure close to the business model that user is adopting or anyway a user defined data structure.&lt;br /&gt;
&lt;br /&gt;
The Inbound HL7 Connector allows the HL7 message creation (in the version 2.x) to be sent to one or more destinations; the Outbound HL7 Connector allows to choose what message type to accept and route. Multiple destinations can be chosen automatically basing on the HL7 filters specifications.&lt;br /&gt;
&lt;br /&gt;
{{GVESB}} [[XML Data mapper | Data transformation]] feature allows fast creation of data transformation and mapping of the HL7 messages. The data mapping is made through simple &amp;quot;Drag and Drop&amp;quot; operations.&lt;br /&gt;
&lt;br /&gt;
==Outbound HL7 connector==&lt;br /&gt;
&lt;br /&gt;
Allows to define a call to a HL7 system defining the connection parameters and using the operation defined in an integration flow on {{GVESB}} through [[VulCon]].&lt;br /&gt;
&lt;br /&gt;
These are the easy steps to follow to defiine a HL7 [[Channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creation of a [[System]] and of a [[Channel]] with the definition of a [[Hl7-call]] [[Operation]]&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ChannelHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* host: hostname or IP address of the HL7 application waiting for the message&lt;br /&gt;
* name: [[Virtual Layer]] [[operation]] name&lt;br /&gt;
* port: application HL7 port&lt;br /&gt;
* timeout: channel HL7 timeout&lt;br /&gt;
&lt;br /&gt;
Definition of a service for the invocation of the defined HL7 [[channel]]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-ServizioHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The service defined in this way can be called in any way allowed by {{GVESB}} i.e. [[Web Services]], http, tcp-ip, etc. &lt;br /&gt;
The HL7 connector manages the messages transforming them into XML messages.&lt;br /&gt;
&lt;br /&gt;
For the mapping from a generic message to a HL7 message it is possible to define a tranformation map through [[XML Data mapper | VulCon]] tool. &lt;br /&gt;
To create the map, go to map configuration after having defined the xsd schema for the input message (incoming from any data source) and the output HL7 format:&lt;br /&gt;
&lt;br /&gt;
[[Image:TrasfHl7.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:1100px-Mapping.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
==Inbound HL7 Connector==&lt;br /&gt;
The inbound HL7 connector allows the definition of a HL7 message listner, associating the message reception to a {{GVESB}} [[service]].&lt;br /&gt;
The received HL7 message can be forwarded to one or more systems using any available {{GVESB}} enabled protocol: [[Web Services]], JDBC, email, ftp, etc. After every message received, a response message must be sent as acknowledge of the transaction (or abort). The connector enables the reply message creation with no applicative effort, mapping automatically the flow result with the ACK message to send back to the caller application.&lt;br /&gt;
&lt;br /&gt;
The easy steps to follow to define an HL7 [[channel]] are the following:&lt;br /&gt;
&lt;br /&gt;
Definition of a filter to apply to every received HL7 message:&lt;br /&gt;
[[Image:1100px-ListnerHl7.png|1100px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Association to a HL7 message to the [[service]] defined on {{GVESB}}:&lt;br /&gt;
[[Image:1100px-ListenerServiceHl7.png|1100px]]&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>G.iannello</name></author>
		
	</entry>
</feed>