Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web Services + Jim Weaver, Learning Assistant Technologies

Similar presentations


Presentation on theme: "Web Services + Jim Weaver, Learning Assistant Technologies"— Presentation transcript:

1 Web Services + Jim Weaver, Learning Assistant Technologies
Ken Weiner, Interactive Business Solutions Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

2 Overview LAT/IBS co-development Introduction to web services
JAX-RPC and Apache Axis uPortal channels exposed by web services PLA client and uPortal channel client Web Services for Remote Portals (WSRP) Live Demos! Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

3 LAT/IBS Co-development
Learning Assistant Technologies (LAT) Personal Learning Assistant (PLA) Motivation: present uPortal channels to PLA users Interactive Business Solutions (IBS) Code contributed to open source Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

4 Personal Learning Assistant
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

5 Personal Learning Assistant
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

6 Personal Learning Assistant
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

7 Web Services A Web service is a piece of software that can communicate with another application over a network by using a specific set of standard protocols SOAP, WSDL, UDDI Microsoft .NET and SunONE Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

8 SOAP – Simple Object Access Protocol
XML-based protocol for exchange of information in a decentralized, distributed environment Envelope defines what is in a message and how to process it Encoding rules expressing instances of application-defined data types defines a convention for representing RPC requests and responses. Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

9 WSDL – Web Services Description Language
XML format for describing a Web service Specifies the service's location and the operations exposed by the service WSDL is to web services what IDL is to COM Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

10 UDDI – Universal Description, Discovery, and Integration
The “yellow pages” of web services Facilitates service discovery UDDI Business Registry UDDI Operators: IBM and Microsoft API for registering and finding businesses and services Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

11 Service-oriented architecture
Registry UDDI UDDI Find Publish Service Requestor (client) Service Provider (server) WSDL SOAP Bind Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

12 JAX-RPC JavaTM APIs for XML-based Remote Procedure Call
For developing and accessing Web services Defines mapping between WSDL and Java interfaces Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

13 Apache Axis Apache eXtensible Interaction System
An implementation of the SOAP submission to W3C and JAX-RPC Follow-on to Apache SOAP project Current version: beta 2 Tools TCPMonitor Java2WSDL WSDL2Java Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

14 Axis on the Server Monday, June 10, 2002
Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

15 Axis on the Client Monday, June 10, 2002
Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

16 TCP Monitor Monday, June 10, 2002
JA-SIG uPortal Conference, Vancouver, BC

17 Remote Channel Web Service
PLA client Channels Web Service SOAP Channels uPortal WSDL uPortal Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

18 Remote Channel Web Service
Authenticate credentials Instantiate channel fname instance identifier Web Service Client Render channel Web Service instance identifier, runtime data channel markup Receive event instance identifier, portal event Free channel instance identifier Logout WSDL Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

19 Channel Functional Name (fname)
Uniquely identifies a published channel within an instance of uPortal UP_CHANNEL Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

20 Remote Channel Service Java Classes
org.jasig.portal.webservices IRemoteChannel RemoteChannel org.jasig.portal.webservices.ser CookieSerializerFactory CookieSerializer CookieDeserializerFactory CookieDeserializer PortalEventSerializerFactory PortalEventSerializer PortalEventDeserializerFactory PortalEventDeserializer Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

21 Web Service Deployment Descriptor
WEB-INF/server-config.wsdd <service name="RemoteChannel" provider="java:RPC"> <requestFlow><handler type="SessionHandler"/></requestFlow> <responseFlow><handler type="SessionHandler"/></responseFlow> <parameter name="scope" value="session"/> <parameter name="className“ value="org.jasig.portal.webservices.RemoteChannel"/> <parameter name="methodName" value="*"/> [type mappings for Cookie, Cookie[], and PortalEvent] </service> Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

22 URL Rewriting org.jasig.portal.utils… AbsoluteURLFilter Add base URL
<img src=“picture.gif”/> <img src=“ org.jasig.portal.utils… AbsoluteURLFilter XHTMLURLFilter WMLURLFilter Add base URL Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

23 Sessions org.apache.axis.handlers.SimpleSessionHandler
<SOAP-ENV:Envelope …> <SOAP-ENV:Header> <sessionID xsi:type="xsd:long“>12345</sessionID> </SOAP-ENV:Header> <SOAP-ENV:Body> . </SOAP-ENV:Body> </SOAP-ENV:Envelope> Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

24 PLA Client Subclass of javax.swing.JEditorPane Proxy servlet
Cascading style sheet (CSS) Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

25 PLA Web Services Client
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

26 Channel Web Services Client
New channel type: Remote Channel Proxy Authentication Passes user interactions and portal events Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

27 Remote Channel Proxy Java Classes
org.jasig.portal.channels.remotechannel CRemoteChannel Extends BaseChannel, Implements IPrivileged, ICacheable RemoteChannel RemoteChannelSoapBindingStub Extends Stub Implements RemoteChannel RemoteChannelService RemoteChannelServiceLocator Extends Service Implements RemoteChannelService Exception Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

28 Remote Channel Proxy Channel Type
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

29 Remote Channel Proxy Parameters
Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

30 Remote Channel Monday, June 10, 2002
JA-SIG uPortal Conference, Vancouver, BC

31 Web Services for Remote Portals (WSRP)
WSRP will define: A WSDL interface description for invocation of WSRP services How to Publish, Find, Bind WSRP services and metadata Markup Fragment Rules for markup emitted by WSRP services Companies involved in WSRP: Bea, Bowstreet, Divine, Epicentric, Factiva, France Telecom, Fujitsu, HP, IBM, Interwoven, Lexis-Nexis, Lotus, Moravia IT, Netegrity, Oracle, Peoplesoft, Plumtree, Silverstream, Stellent, SUN, Sybase, Tibco, WebCollage, SAP Portals, SeeBeyond Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

32 WSRP Goals Enable interactive, user-facing web services to be easily plugged into standards-compliant portals Let anybody create and publish their content and applications as user-facing web services Let admins browse directories for WSRP services to plug into their portals without programming effort Let portals publish portlets so that they can be consumed by other portals without programming Make the Internet a marketplace of visual web services, ready to be integrated into portals Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

33 Abstract Portal  WSRP Interaction
User WSRP Consumer (Portal) WSRP Producer (Service) Adds Portlet Create Portlet Instance I I Views Portlet Allocate new Instance Get Portlet Markup I I I S A Generate Markup, (opt: create Session) A S Clicks Action Perform Portlet Action I I S A A I S A Action Handling (opt: create Session) Removes Portlet Destroy Portlet Instance I I I Destroy instance Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

34 WSRP Interface bindClient() createSession() createPortletInstance()
getPortletMarkup() invokePortletAction() destroyInstance() Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

35 Planned WSRP Milestones
May 2002: WSRP Scenarios / Use Cases July 2002: First draft of WSRP Specification August 2002: First version of Impl proving that spec works October 2002: Final draft of WSRP Specification November 2002: Update of Impl to reflect final draft December 2002: WSRP Specification 1.0, Update of Impl. to reflect 1.0 spec, Compliance Test Kit 2003 Start next cycle for WSRP Specification Source: Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

36 Live Demos LAT PLA client uPortal channel client Monday, June 10, 2002
JA-SIG uPortal Conference, Vancouver, BC

37 Useful URLs JAX-RPC Apache Axis WSRP java.sun.com/xml/jaxrpc/
xml.apache.org/axis WSRP Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC

38 PLA via uPortal Monday, June 10, 2002
JA-SIG uPortal Conference, Vancouver, BC

39 PLA via uPortal Monday, June 10, 2002
JA-SIG uPortal Conference, Vancouver, BC

40 Speaker Evaluation Info:
The End Speaker Evaluation Info: Speakers: Jim Weaver and Ken Weiner Presentation Title: Web Services and uPortal Date: 6/10/2002 Time: 2:00 PM – 3:00 PM Room: Grand Ballroom B Monday, June 10, 2002 JA-SIG uPortal Conference, Vancouver, BC


Download ppt "Web Services + Jim Weaver, Learning Assistant Technologies"

Similar presentations


Ads by Google