Jim Farmer, JA-SIG Collaborative 20 June 2002 EUNIS 2002, Porto, Portugal Portals, uPortal, and Web Services
uPortal & JA-SIG Publisher’s note This short presentation was originally scheduled as part of Art Pasquinelli’s panel. Because of travel interruptions, this presentation was not made at the conference. Supplementary material follows the end of the presentation. instructional media + magic, inc.
uPortal & JA-SIG Administrative Instruction Library Research A Student’s Web World
uPortal & JA-SIG Students expectations shaped by... Their experience with e-government Their use of financial services portals Their use of the Internet Their life in a “real-time, information rich” environment
uPortal & JA-SIG Students now expect... Service 24 hours a day, 7 days a week Complete information from a single source Delivery by Web, , telephone, and facsimile, and, wireless devices response time of 15 seconds for telephone, 10 seconds for Web, and 2 hours for and facsimile access to a complete transaction history
uPortal & JA-SIG Why are portals important? Makes knowledge workers more productive Preferred by users Market share University identity A viable architecture for information services Integration platform Improved services Lower costs
uPortal & JA-SIG A Student Portal
uPortal & JA-SIG Types of portals Enterprise [integration] Knowledge/document management Collaboration and messaging Front end to application servers Jim Rapoza, “Enterprise value of portals is clear,” eWeek, September 13, 2001
uPortal & JA-SIG Required capabilities Type of PortalJSPChat & Mail Content Classification and Search Web Services Enterprise Collaboration Knowledge management Front end University ??? ? ?? ?? ? ????
uPortal & JA-SIG Available services
uPortal & JA-SIG Required authentication Type of PortalLocalRemote Anonymous Enterprise ? X Collaboration ?X Knowledge management ? Front end ?X University
uPortal & JA-SIG What is uPortal? Enterprise, horizontal portal Framework for presenting aggregated content (channels) Personalization Role-based access control Open source, collaborative effort Java web application
uPortal & JA-SIG JA-SIG Java In Administration Special Interest Group Conferences biannually Clearing house Collaborative projects
uPortal & JA-SIG uPortal Interfaces Authentication Proving your identity Authorization Deciding what you can access Directory services Such as populating EduPerson User preferences Profiles, structure, themes, skins Channel information Availability and configuration
uPortal & JA-SIG What is a Channel? Displays content XML feeds Rich Site Summary (RSS) Web services Legacy systems Interactive applications Bookmarks , chat, list serves
uPortal & JA-SIG The Meteor channel
uPortal & JA-SIG Flexible Layouts Structures Tab / column Tree / column Themes Multi-column Multi-row Skins
uPortal & JA-SIG Multiple Target Devices
uPortal & JA-SIG XML Stylesheet XHTML: Web Browser WML: Cell Phone HTML: PDA XSLT Processor Content Transformation
uPortal & JA-SIG Tab / Column Layout
uPortal & JA-SIG Tree / Column Layout
uPortal & JA-SIG What’s new in 2.0? Abstraction of layout Structure/theme transformations Standard channel events Standard CSS classes More flexible publish/subscribe User profile management JNDI lookup service WebProxy channel
Web services as an architecture
uPortal & JA-SIG A Web service is XML business messages using ebXML/SOAP compliant data transport rendered using XSL transformations for a remotely authenticated user
uPortal & JA-SIG Web services architecture is XML “tagged” data content eXtensible Markup Language ebXML/SOAP data transport Simple Object Access Protocol XSL transformations for presentation eXtensible stylesheet language and now UDDI/WSDL directory services Universal Description, Discovery, and Integration, and Web Services Description Language
uPortal & JA-SIG Value of Web services technology Open standards Web service projects are taking one-fourth the time and costing one- fifth comparable projects using traditional technology. Performance is 2 to 10 times better than expected. HFC Bank - IFX credit card application using XML, SOAP and XSLT Deutsche Bank Bauspar - FixML security transaction integration using XML messages and XSL transformations Hypo Vereinsbank - Integration Based on presentations at the XSLT [Invitational] Conference Oxford, University, April 8-9, 2001
The Meteor Channel, an example of Web services
uPortal & JA-SIG As implemented... Web Services Secure HTML Meteor Secure XML Standard Browser Standard Browser uPortal Meteor SOAP Meteor SOAP Meteor SOAP Meteor SOAP Database
uPortal & JA-SIG Data from multiple sources, locations
uPortal & JA-SIG Meteor Channel in the uPortal
uPortal & JA-SIG Web services in uPortal WSRP channel-level support SOAP in application channels Soon as portal service UDDI pilot test late summer 2002 WS-Security implementation planned
The end jim farmer
Web services as an architecture
uPortal & JA-SIG Department of Education standards MeteorSFA Announced [March 2001] Expected UML XML Java SOAP XML-RPC UDDI/WSDL SAML Proposed, with convergence [Feb 2000]
uPortal & JA-SIG Is Web technology important? Feb The University of Illinois releases the Mosaic browser Oct The word e-commerce enters the vocabulary Feb ED/SFA announces UML, XML, Java standards Sep IBM announces “Web services”, a new architecture
uPortal & JA-SIG Convergence: Business Messages June 2000MayDecember CommonLine XML [ESC] LoanML [IFX] Common Record [SFA] CommonLine R5 [ NCHELP ESC]
uPortal & JA-SIG Convergence: Data Transport September 2000AprilMarch SOAP [NCHELP ESC] SOAP [SFA] ebXML [PESC] “Simple SOAP” [Meteor]
uPortal & JA-SIG Convergence: Authentication December 2000JuneMarch SFA [NCS Proprietary] SAML [Oasis] S2ML [Netegrity] AuthML [Securant] XTASS [VeriSign] Internet 2 [Shibboleth]
The Meteor Channel, an example of Web services
uPortal & JA-SIG Meteor in a nutshell… Lender XML
uPortal & JA-SIG Diagram of Meteor Concept Web Services HTML Meteor XML Student Access Provider Data Provider Student Access Provider Data Provider
Architecture of uPortal
uPortal & JA-SIG Channel Elementary unit of presentation, defined by the IChannel interface IChannel Set Runtime Data () User Interaction External Information Render XML () Channel Content (Presentation)
uPortal & JA-SIG Framework Organization uPortal Framework User InteractionPresentation Channel
uPortal & JA-SIG User Layout User Layout is an abstract structure defining the overall content available to the user userLayout is a tree structure consisting of “folders” and “channels”, the later always being the leaf nodes
uPortal & JA-SIG User Layout
uPortal & JA-SIG Structure Transformation Channel ColumnChannel Tab Channel Tab Channel Tab User Layout Column
uPortal & JA-SIG Theme Transformation
uPortal & JA-SIG Compiling the Presentation Structure transformation Theme transformation userLayout structuredLayout HTML, WML VoiceML... XSLT setRuntimeData() renderXML() Channels
uPortal & JA-SIG Architectural Features Extensive user customization Inter-channel communications Channel services Normalized database schema Profiles (multiple device management) Layout-specific preferences channels JNDI backbone
uPortal & JA-SIG Channel Services Services provide common functionality to the channels Logging facility “Password wallet” File sharing, printing, mail, calendar Channel synchronization JNDI access
uPortal & JA-SIG Inter-channel communication Channel discovery How to find a channel ? Need channel instance ID. Functional names Direct interaction Channel access objects Channel-bound public JNDI subtrees
uPortal & JA-SIG Database backing Storage interfaces User layout, profiles, preferences, stylesheet descriptions Channel registry Normalized DB schema Generic and Oracle implementations
uPortal & JA-SIG User Profiles Profile defines: Structure/Theme stylesheets A set of user preferences User layout System vs. User profiles Browser-specific preferences User-Agent ID maps to a profile Initial profile mapping
uPortal & JA-SIG User preferences Portal=rendering+customization User Preferences Channel Swappable layout and preference management modules Profile management module Tab-column specific UP module Skin Selection
uPortal & JA-SIG User Preferences
uPortal & JA-SIG Publish/Subscribe Channel publishing document Channel parameters Default values Modification permissions Descriptions Publish/Subscribe steps Step sequence Instructions, help Flexible channel publishing
uPortal & JA-SIG Channel Types
uPortal & JA-SIG Channel Settings
uPortal & JA-SIG Channel Controls
uPortal & JA-SIG Channel Classification
uPortal & JA-SIG Channel Authorization: Roles
uPortal & JA-SIG In progress Performance optimization Caching/Pooling optimizations Setup optimization Authorization checks User Identification (EduPerson) Tree layout UP module More content !