jade tutorial wsig slides
TRANSCRIPT
WHITESTEINTechnologies
JADE Web Service Integration Gateway (WSIG)
Dominic Greenwood
JADE Tutorial, AAMAS 2005
Dominic Greenwood –2–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
• i.e. Web services
The W3C definition of a Web service as “a software system designed to supportinteroperable machine-to-machine interaction over a network. It has an interface describedin a machine-processable format (specifically WSDL). Other systems interact with the Webservice in a manner prescribed by its description using SOAP messages, typically conveyedusing HTTP with an XML serialization in conjunction with other Web related standards”
•Trend likely to substantiated by Semantic Web technologies (e.g. OWL and OWL-S)
WS are exerting increasing influence across commerce and industry
•Business Rules & Business Process Management (e.g., WSBPEL)
Approaching a point of critical inertia to becoming a mainstream technology
Introduction
Web Services
WWW has increasing movement towards machine-to-machine models of interaction
Dominic Greenwood –3–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
Introduction (cont.)
Web services and Agents
There are clear benefits in connecting agents and Web services transparently andautomatically
•
•
•
Brings the two worlds together
Allows more powerful operational modalities for both
A bridge through OWL(-S) to enable Semantic Web and Semantic Grid applications
W3C Web Services Architecture clearly expresses the notion that, “... software agents arethe running programs that drive Web services - both to implement them and to access themas computational resources that act on behalf of a person or organisation.”
Our solution is the introduction of a Web Service Integration Gateway (WSIG) designed toencapsulate all functionality required to connect the two realms, whilst ensuring minimalhuman intervention and service interruption
Dominic Greenwood –4–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
•
•
FIPA Directory Facilitator for agent services
UDDI for Web services
Standard Register, Deregister, Modify and Search services are exposed
WSIG Architecture
The Basics
Standalone intemediary gateway service
Offers transparent, bi-directional transformations between FIPA compliant agents servicesand Web services employing the WSDL/SOAP/UDDI stack
JADE selected as platform to host agents
Intercepts calls from agents to Web services and Web service clients to agent services
Contains two internal registries:
Dominic Greenwood –5–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WSIG Architecture (cont.)
Requirements
JADE v3.3
Jakarta Tomcat (http://jakarta.apache.org/tomcat/)
Apache jUDDI (http://ws.apache.org/juddi/)
mySQL (http://www.mysql.com/)
MySQL Connector/J (http://www.mysql.com/products/connector/j/)
Apache Axis v1.1 (http://ws.apache.org/axis/)
UDDI4J v2.0.2 (http://www.uddi4j.org/)
WSDL4J v1.4 (http://www-124.ibm.com/developerworks/projects/wsdl4j/)
Xerces v2.6.2 (http://xml.apache.org/xerces-j/)
Dominic Greenwood –6–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WSIG Architecture (cont.)
Standard WSIG Architectural Model
Dominic Greenwood –7–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WSIG Architecture (cont.)
Abstract Components
The GatewayRegistry
•
•
•
•
•
Accepts external register, deregister, modify and search calls
… From JADE agents
… From external Web services
Receives and processes incoming directory operations, thereby controlling access to theinternal registries
ACL encoded service descriptions stored in the JADE Platform DF
WSDL encoded service descriptions stored in the internal UDDI
Automatic translation between these performed by ServiceDescriptionTranslator
WSIG Architecture (cont.)
Dominic Greenwood –8–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WS registers
SD with WSIGUDDI
WS authenticatedand tModel isregistered withWSIG UDDI
Translate
WSDL intoFIPA ACL/SL0
Send
registration to
Create FIPA
Actions performedby the WSIG
Gateway Agent
WSDL from
RegistrationActions performed
by the originatingWeb service
Actions performedby the JADE DF Return Done
DF registersSD
Agent sendsSD to DF
Store AgentSD in DF
into WSDL
No
JADE DF
Create stub forAgent service
on Axis Server
AS->WS?
RegistertModel+WSDL
in UDDI
Actions performedby the JADEPlatform DF
Extract
Return Done
UDDI
Actions performedby the originating
JADE agent
tModel
Send AgentSD to Gateway
Agent
Translate
Create
ACL/SL0
tModel for
Yes
Agent SDActions performed
by the WSIGGateway Agent
Return Done
Dominic Greenwood –9–Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WSIG Architecture (cont.)
Abstract Components
ServiceDescriptionTranslation
•Translation of ACL Service Descriptions to WSDL and vice-versa
ACL
JOB
Dominic Greenwood – 10 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
WSIG Architecture (cont.)
Abstract Components
StubCreation
•
•
•
•
Creates method stubs for Web services to call agent services via the gateway
When a new agent service is registered with the WSIG, the Gateway Agent contacts Axisto expose a corresponding Web service stub
Stub is built from the WSDL service description of the agent service held in the WSIGUDDI
When an invocation is received from a Web service client stub is activated
–
–
Manages reception and processing of the incoming message
And any subsequent conversation context
•When an agent invokes a Web service, if a response is expected a temporary stub iscreated and removed once the reply is received
Dominic Greenwood
WSIG Architecture (cont.)
Abstract Components
WebServiceInvocation
•Transforms an ACL request into a SOAPinvocation and any return value from aWeb service back into an ACL inform
Extract ACLEncoded SD
WSDL SD
NoIs SD in
DF?
Yes
ReturnCorrespondingWSDL SD inUDDI tModel
NO
Return Failure
Send SOAPMessage toReceiver(s)
ReceiveReturn Callfrom WebService
Build SOAPMessage with
Construct ACLFIPA Inform fromReceived SOAP
Message
Send ACLInform
Message toAgent Sender
Is ResponseExpected?
YES
Create TemporaryReturn Stub for
Send SOAPCopyright © 2005 by Whitestein Technologies AG, Switzerland Message toAll rights reserved. Web service
Web Service
RemoveTemporary
Return Stub for – 11 –Web Service
Agent looks up SD inPlatform DF
Agent builds FIPARequest and sends to
Gateway Agent
Receive ACL EncodedFIPA Request for a
Web ServiceInvocation
Actions performedby a JADE agent
Actions performedby a the WSIGGateway agent
Dominic Greenwood – 12 –
Abstract Components
AgentServiceInvocation
Transforms a SOAP invocation ontoan Agent service stub into an ACLrequest and any response from anACL inform back into a SOAPencoded return value
Is SD inUDDI?
No
Yes
Build FIPARequest
Message withACL SD
Is ResponseExpected?
No
Return Failure
Send FIPARequest
Message toAgent(s)
Receive FIPAInform
Message from
Agent
Construct SOAPMessage fromReceived FIPA
Inform Message
Send SOAPResponse
Message to
invoking WebService Client
Yes
Request
Send FIPA
Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved. Message to
Agent(s)
WSIG Architecture (cont.)
WS Client looks up SDin WSIG UDDI
WS Client buildsSOAP Request and
sends serviceendpoint on WSIG
Receive SOAPMessage Request for
an Agent ServiceInvocation
ExtractWSDL
Encoded SD
Actions performedby a WS Clientt
Actions performedby a the WSIGGateway agent
Dominic Greenwood – 13 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
•Semantic Integration Gateway uses OWL-S
Use of the OWL-S Grounding Ontology to mapstandard WSDL elements onto ontology elements
•
•
•
WSDL operations are mapped onto OWL-Satomic processes
WSDL message elements are mapped ontothe inputs and outputs of the atomic process
OWL-S class types of the inputs and outputs of an atomic process are mapped onto theWSDL extensible concept of abstract type
In the opposite direction the OWL-S WsdlGrounding class is used
Semantic Coupling
Semantic Web Services
WSDL is fundamentally limited in its ability to express semantic information about a servicethat could be used by an agent for intelligently manipulating it
Dominic Greenwood – 14 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
Semantic Coupling (cont.)
The Basics
OWL-S provides the means to describe servicesaccording to three aspects:
•
•
•
The service profile defines what the serviceexpects of its consumers and what it providesfor them
The service process model defines how theservice operates
The service grounding defines how the service is accessed for use
Provides intrinsic support for more complex and dynamic service populations
•
•
•
Determining the best service to do the job
Determining how to create service chains according to goal specification and planresolution
Improved resilience to failure by providing greater degrees of freedom to adapt
Dominic Greenwood – 15 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
Semantic Coupling (cont.)
WSIG OWL-S Architecture
Dominic Greenwood – 16 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
Semantic Coupling (cont.)
Registering an Agent Service
Dominic Greenwood – 17 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
•
•
•
•
•
More companies are adopting Business Rules and BPM
Need to synthesise and enact collaborating business processes
Transition of business semantics along the value-chain
Need to create an agile, collaborative service ecosystem
Need to pervade business semanticsthroughout the service infrastructure
Dynamic composition of Semantic Webservices is a viable solution for BPMcollaboration
WSIG is an example of one of the toolsrequired to realise this
Closing Remarks
Are Semantic Web Services a Commercial Viability?
Yes for many reasons, but here’s one:
Dominic Greenwood – 18 –Copyright © 2005 by Whitestein Technologies AG, SwitzerlandAll rights reserved.
•
•
Invocation of dynamically composed A/W service populations
BPM process collaboration system with WSBPEL
We welcome interests in collaboration from the community
Ongoing & Future Work
Directions
Completion of JADE ontology bean publication as OWL-S ontologies
Extension to support WSDL-S and WSMO series
ME version planned for disconnected service with mobile devices
Version with OWL-S support will be released shortly within WSIG add-on of JADE
Sample application scenarios in development