Difference between revisions of "Web Services"

From GreenVulcano Wiki
Jump to: navigation, search
(Create new {{GVWS}} with {{VULCON}})
 
(53 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
==Definition==
 
==Definition==
Web Service is a software system that allows the interoperability among machines on the same network.  
+
[http://en.wikipedia.org/wiki/Web_service Web Service] is a method of communication between different machines.  
Through a Web Service it is possible to pubblish business services using a contract, called WSDL.  
+
Using a Web Service it is possible to publish business services using a contract, called WSDL.  
  
 
{{GVESB}} provides a very simple method that helps developers to manage {{GVWS}} operations as:
 
{{GVESB}} provides a very simple method that helps developers to manage {{GVWS}} operations as:
Line 9: Line 9:
 
*publishing
 
*publishing
 
*undeploy
 
*undeploy
Any service flow can be pubblished in {{GVESB}} as a {{GVWS}}.{{L_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.
+
Any service flow can be published in {{GVESB}} as a Web Service. {{L_VULCON}} helps the user to create or invoke a Web Service, leaving the user the only task to define the data structures in order to interact with the external world.
  
 
{{GVESB}} provides a complete management of {{GVWS}} through Axis2 platform. It supports:
 
{{GVESB}} provides a complete management of {{GVWS}} through Axis2 platform. It supports:
*{{GVWS}} stateful and asynchronous
+
*Stateful and asynchronous {{GVWS}}
*Processing SOAP Messages with XML parsing more efficient pull-based instead of DOM (Document Object Model)
+
*Processing SOAP Messages with XML parsing, using the more efficient AXIOM pull-parser instead of DOM (Document Object Model)
 
*Increased Scalability
 
*Increased Scalability
 
*Hot deploy and undeploy
 
*Hot deploy and undeploy
  
 
==Create new {{GVWS}} with {{VULCON}}==
 
==Create new {{GVWS}} with {{VULCON}}==
VulCon provides two wizards to create new Web Services. The first one starting from an {{GVESB}} service and creating the WSDL and the AAR to deploy (bottom-up development method), the second one, starting from a WSDL, creating {{GVESB}} services for each operation chosen (top-down development method).
+
{{VULCON}} provides two wizards for creating new {{GVWS}}. The first one starts from a {{GVESB}} service and creates the WSDL and the AAR to deploy ([[bottom-up development method]]), while the second one starts from a WSDL and creates {{GVESB}} services for each chosen operation ([[top-down development method]]).
==bottom-up development method==
+
If you need to invoke a Web Service operation, instead, you can choose [[Wizard Call Web Service]] or, if you want to simply redirect a Web Service call to a different endpoint, you can choose [[Wizard Proxy Web Service]]. The wizard can be activated opening the context menu on the Core view tree's Service element.
 +
<div class="version_ge3.3">
 +
You can publish any {{GVESB}} core service using a generic Web Service interface. By means of this feature, you can invoke directly the following core service operations, depending on the how the {{GVESB}} core service has been designed:
 +
*requestReply
 +
*request
 +
*getReply
 +
*getRequest
 +
*sendReply
 +
*execute
 +
You can get the generic WSDL at location:<pre>http://<host>:<port>/gvaxis2/services/GreenVulcanoWebservice?wsdl</pre>
 +
In order to invoke the service, you have to set all required parameters. This can be done also using the [[Wizard Enable GreenVulcano Web Service]].
 +
</div>
  
==Example==
+
=={{GVCONSOLE}} Web service section==
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:
 
{| class="gvtable"
 
|-
 
! 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:
 
  
<syntaxhighlight lang="XML"><?xml version="1.0" encoding="UTF-8"?>
+
The Web Service section in {{GVCONSOLE}} contains five main pages:
<workbook>
+
#[[General parameter]]: shows the general configuration of business web services and the UDDI Registry's configuration,
    <sheet number="0">
+
#[[WSDL Section]]: allows to generate or delete WSDL files, and to deploy the Web Service
        <name><![CDATA[Foglio1]]></name>
+
#[[UDDI Section]]: allows to publish Web Service in UDDI registry, if the UDDI registry has been configured.
        <row number="0">
+
#BPEL Deployed Processes
            <col number="0">
+
#BPEL Currently Available Instances
                <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>
 
</syntaxhighlight>
 
  
With a [[ChangeGvBufferNode]] is possible parsing XML and retrieve any tag and value.
+
If you are familiar with [http://axis.apache.org/axis2/java/core/docs/webadminguide.html#Intro  Axis2 console] it's possible to look up the following link:<pre>http://ipaddredss:portnumber/gvaxis2</pre>
 
+
{{VOTE}}
--[[User:A.sicignano|A.sicignano]] 16:30, 19 January 2012 (CET)
 

Latest revision as of 08:25, 29 April 2013

Definition

Web Service is a method of communication between different machines. Using a Web Service it is possible to publish 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 published in GreenVulcano® ESB as a Web Service. VulCon® helps the user to create or invoke 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:

  • Stateful and asynchronous Web Services
  • Processing SOAP Messages with XML parsing, using the more efficient AXIOM pull-parser instead of DOM (Document Object Model)
  • Increased Scalability
  • Hot deploy and undeploy

Create new Web Services with VulCon

VulCon provides two wizards for creating new Web Services. The first one starts from a GreenVulcano® ESB service and creates the WSDL and the AAR to deploy (bottom-up development method), while the second one starts from a WSDL and creates GreenVulcano® ESB services for each chosen operation (top-down development method). If you need to invoke a Web Service operation, instead, you can choose Wizard Call Web Service or, if you want to simply redirect a Web Service call to a different endpoint, you can choose Wizard Proxy Web Service. The wizard can be activated opening the context menu on the Core view tree's Service element.

You can publish any GreenVulcano® ESB core service using a generic Web Service interface. By means of this feature, you can invoke directly the following core service operations, depending on the how the GreenVulcano® ESB core service has been designed:

  • requestReply
  • request
  • getReply
  • getRequest
  • sendReply
  • execute
You can get the generic WSDL at location:
http://<host>:<port>/gvaxis2/services/GreenVulcanoWebservice?wsdl

In order to invoke the service, you have to set all required parameters. This can be done also using the Wizard Enable GreenVulcano Web Service.

GV Console Web service section

The Web Service section in GV Console contains five main pages:

  1. General parameter: shows the general configuration of business web services and the UDDI Registry's configuration,
  2. WSDL Section: allows to generate or delete WSDL files, and to deploy the Web Service
  3. UDDI Section: allows to publish Web Service in UDDI registry, if the UDDI registry has been configured.
  4. BPEL Deployed Processes
  5. BPEL Currently Available Instances

If you are familiar with Axis2 console it's possible to look up the following link:

http://ipaddredss:portnumber/gvaxis2

{{#w4grb_rate:}} <w4grb_ratinglist latestvotes items="5" nosort/>