Difference between revisions of "Web Services"
G.iannello (talk | contribs) m (→Definition) |
(→{{VULCON}} / {{GVCONSOLE}} Configuration) |
||
Line 17: | Line 17: | ||
*Hot deploy and undeploy | *Hot deploy and undeploy | ||
− | =={{ | + | ==Create new {{GVWS}} with {{VULCON}}== |
''excelreader-call'' is the operation that must be configured into {{L_VULCON}} or {{L_GVCONSOLE}} [[System section]], to convert an Excel file in [[GVBuffer.object]] field, in an XML document. | ''excelreader-call'' is the operation that must be configured into {{L_VULCON}} or {{L_GVCONSOLE}} [[System section]], to convert an Excel file in [[GVBuffer.object]] field, in an XML document. | ||
In order to add an operation ''excelreader-call'' you must define the following fields: | In order to add an operation ''excelreader-call'' you must define the following fields: | ||
Line 82: | Line 82: | ||
At this point you have configured a service with an ''excelreader-call'' operation. | At this point you have configured a service with an ''excelreader-call'' operation. | ||
− | |||
==Example== | ==Example== |
Revision as of 17:10, 31 January 2012
Definition
Web Service is a software system that allows the interoperability among machines on the same network. Through a Web Service it is possible to pubblish business services using a contract, called WSDL.
GreenVulcano® ESB provides a very simple method that helps developers to manage Web Services operations as:
- create
- invoke
- deploy
- publishing
- undeploy
Any service flow can be pubblished in GreenVulcano® ESB as a Web Services.VulCon® helps the user to pubblish an ESB service as a web service, leaving the user the only task to define the data structures in order to interact with the external world.
GreenVulcano® ESB provides a complete management of Web Services through Axis2 platform. It supports:
- Web Services stateful and asynchronous
- Processing SOAP Messages with XML parsing more efficient pull-based instead of DOM (Document Object Model)
- Increased Scalability
- Hot deploy and undeploy
Create new Web Services with VulCon
excelreader-call is the operation that must be configured into VulCon® or GV Console® System section, to convert an Excel file in GVBuffer.object field, in an XML document. In order to add an operation excelreader-call you must define the following fields:
- class: it.greenvulcano.gvesb.virtual.excel.reader.GVExcelReaderCallOperation (java class that manage ExcelReaderCall invocation).
- name: this field identify the operation name that you will use in service definition.
- onlyData: is a boolean field, it enabled in output cell formatting informations. If 'false', insert in the XML document also the cell formatting informations.
Default to 'true'.
- type: call
The following example shows the configuration generated from VulCon® or GV Console® when you configure an excelreader-call operation:
<?xml version="1.0" encoding="UTF-8"?>
<GVSystems name="SYSTEMS" type="module">
<Systems>
<System id-system="system-name" system-activation="on">
<Channel id-channel="CHANNEL_NAME">
<excelreader-call class="it.greenvulcano.gvesb.virtual.excel.reader.GVExcelReaderCallOperation"
name="ReadExcelInput" type="call" onlyData="true"/>
</Channel>
</System>
</Systems>
</GVSystems>
To use an excelreader-call in a GreenVulcano® ESB 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.
The following example shows the configuration generated from VulCon® or GV Console® when you configure an excelreader-call operation in GreenVulcano® ESB service:
<?xml version="1.0" encoding="UTF-8"?>
<GVServices name="SERVICES" type="module">
<Groups>
<Group group-activation="on" id-group="DEFAULT_GRP"/>
</Groups>
<Services>
<Service group-name="DEFAULT_GRP" id-service="SERVICE-NAME"
service-activation="on">
<Client id-system="SYSTEM-NAME" statistics="off" system-activation="on">
<Operation name="RequestReply" operation-activation="on"
out-check-type="none" type="operation">
<Participant id-channel="CHANNEL-NAME" id-system="SYSTEM-NAME"/>
<Flow first-node="excel_reader" point-x="20" point-y="112">
<GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode"
id="excel_reader" id-system="DAMA"
input="input" next-node-id="end"
op-type="call"
operation-name="ReadExcelInput"
output="excel_xml" point-x="158"
point-y="112" type="flow-node"/>
<GVEndNode class="it.greenvulcano.gvesb.core.flow.GVEndNode"
end-business-process="yes" id="end" op-type="end"
output="excel_xml" point-x="358" point-y="112"
type="flow-node"/>
</Flow>
</Operation>
</Client>
</Service>
</Services>
</GVServices>
At this point you have configured a service with an excelreader-call operation.
Example
This example shows an XML document generated by a simple Excel sheet (without cols and rows grouping). Given an Excel sheet with the following structure:
ID1 | ID2 | ID3 | ID4 | ID5 | ID6 | ID7 |
---|---|---|---|---|---|---|
23 | 23232 | 23 | 23333 | 1 | 2 | 3 |
24 | 24444 | 23 | 23332 | 1 | 2 | 3 |
excelreader-call generates the following XML:
<?xml version="1.0" encoding="UTF-8"?>
<workbook>
<sheet number="0">
<name><![CDATA[Foglio1]]></name>
<row number="0">
<col number="0">
<data><![CDATA[ID1]]></data>
</col>
<col number="1">
<data><![CDATA[ID2]]></data>
</col>
<col number="2">
<data><![CDATA[ID3]]></data>
</col>
<col number="3">
<data><![CDATA[ID4]]></data>
</col>
<col number="4">
<data><![CDATA[ID5]]></data>
</col>
<col number="5">
<data><![CDATA[ID6]]></data>
</col>
<col number="6">
<data><![CDATA[ID7]]></data>
</col>
</row>
<row number="1">
<col number="0">
<data><![CDATA[23]]></data>
</col>
<col number="1">
<data><![CDATA[23232]]></data>
</col>
<col number="2">
<data><![CDATA[23]]></data>
</col>
<col number="3">
<data><![CDATA[711]]></data>
</col>
<col number="4">
<data><![CDATA[1]]></data>
</col>
<col number="5">
<data><![CDATA[1]]></data>
</col>
<col number="6">
<data><![CDATA[1]]></data>
</col>
</row>
<row number="2">
<col number="0">
<data><![CDATA[23]]></data>
</col>
<col number="1">
<data><![CDATA[711]]></data>
</col>
<col number="2">
<data><![CDATA[23]]></data>
</col>
<col number="3">
<data><![CDATA[23232]]></data>
</col>
<col number="4">
<data><![CDATA[1]]></data>
</col>
<col number="5">
<data><![CDATA[1]]></data>
</col>
<col number="6">
<data><![CDATA[1]]></data>
</col>
</row>
</sheet>
</workbook>
With a ChangeGvBufferNode is possible parsing XML and retrieve any tag and value.
--A.sicignano 16:30, 19 January 2012 (CET)