520 likes | 699 Views
Introducing uPortal 2.1. Ken Weiner, Interactive Business Solutions. Release timeline New features in uPortal 2.1 Beyond uPortal 2.1. Overview. uPortal Release Timeline. 1 st Release. Performance. New features. 1.0 Jul 2000. 1.6 Jun 2001. 2.0.1 Apr 2002. 2.1 Dec 2002. 2000. 2001.
E N D
Introducing uPortal 2.1 Ken Weiner, Interactive Business Solutions
Release timeline New features in uPortal 2.1 Beyond uPortal 2.1 Overview
uPortal Release Timeline 1st Release Performance New features 1.0 Jul 2000 1.6Jun 2001 2.0.1 Apr 2002 2.1 Dec 2002 2000 2001 2002 2003 1.5 Feb 2001 2.0 Feb 2002 2.0.2 Jul 2002 2.0.3 Dec 2002 Roles Architecture
Applet publishing CWebProxy enhancements Channel rendering groups Remote channels Groups and permissions managers Composite group service + LDAP impl. Usage statistics gathering CAR file support JNDI data sources New features
Multithreaded and cacheable URL re-writing now in SAX filter, not XSLT Local Connection Context supported IPerson attributes passed automatically Multi-valued HTTP request params supported Keyword-style HTTP query strings supported GET and POST methods supported CWebProxy Enhancements
Allows channels to tailor backend connections to reflect local policy and implementation. Connections are provided as Objects such as URL, LDAP, database connections, etc. org.jasig.portal.security.LocalConnectionContext public void init(ChannelStaticData sd) public String getDescriptor(String descriptor, ChannelRuntimeData rd) public void sendLocalData(Object connection, ChannelRuntimeData rd) Local Connection Context
Inter-channel communication registry org.jasig.portal.ICCRegistry Available in channel static data staticData.getICCRegistry() Registering Add/remove channel pairs ICC Registry
Channel Rendering Groups Chan A Chan D Chan G Chan B Chan E Chan H Chan C Chan F Chan J Chan A, D, G Chan B renderXML() setRuntimeData() Chan C, E, F, H 2nd 1st Chan J
Remote Channel Web Service Swing client Channels Web Service SOAP Channels uPortal WSDL uPortal
Uniquely identifies a published channel within an instance of uPortal UP_CHANNEL Channel Functional Name (fname)
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
org.jasig.portal.webservices IRemoteChannel RemoteChannel org.jasig.portal.webservices.ser ChannelRuntimeDataSerializerFactory ChannelRuntimeDataSerializer ChannelRuntimeDataDeserializerFactory ChannelRuntimeDataDeserializer PortalEventSerializerFactory PortalEventSerializer PortalEventDeserializerFactory PortalEventDeserializer … etc. Remote Channel Service Java Classes
org.apache.axis.handlers.SimpleSessionHandler Sessions <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>
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 portal objects] </service>
<img src=“picture.gif”/> <img src=“http://remoteportal.edu/picture.gif”/> URL Rewriting • org.jasig.portal.utils… • AbsoluteURLFilter • XHTMLURLFilter • WMLURLFilter Add base URL
org.jasig.portal.channels.remotechannel CRemoteChannel Extends BaseChannel, Implements IPrivileged, ICacheable RemoteChannel RemoteChannelSoapBindingStub Extends Stub Implements RemoteChannel RemoteChannelService RemoteChannelServiceLocator Extends Service Implements RemoteChannelService Exception Remote Channel Proxy Java Classes
Developed by OASIS 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 Web Services for Remote Portals (WSRP) Source: http://www.oasis-open.org/committees/wsrp/presentations/wsrp_overview.ppt
bindClient() createSession() createPortletInstance() getPortletMarkup() invokePortletAction() destroyInstance() WSRP Interface
<servicelist defaultService="local" compositeFactory=“…"> <service> <name>local</name> (Factories for groups service, groups store, and entity store) </service> <service> <name>ldap</name> (Factories for groups service, groups store, and entity store) </service> </servicelist> Composite Groups
<LDAPGroupStore> <config> <url>ldap://ldap.columbia.edu:389/o=Columbia,c=US</url> <logonid></logonid> <logonpassword></logonpassword> <keyfield>uni</keyfield> <namefield>cn</namefield> <usercontext></usercontext> <refresh-minutes>120</refresh-minutes> </config> <group name="All LDAP Groups" key = "all"> <description>LDAP-derived groups</description> <group name=“Vigdors" key="1"> <description>All Vigdors</description> <entity-set><filter string=“cn=*vigdor"/></entity-set> </group> LDAP-Based Groups
Object locking Service:org.jasig.portal.services.EntityLockService Package:org.jasig.portal.concurrency.locking Object caching Service:org.jasig.portal.services.EntityCacheService Package:org.jasig.portal.concurrency.caching Object Locking and Caching
Stats Recorder Means to handle portal events Service: org.jasig.portal.services.StatsRecorder Package: org.jasig.portal.services.stats Property: Stats Recorder Factory Implementation DoNothingStatsRecorderFactory (default) PrintingStatsRecorderFactory LoggingStatsRecorderFactory Usage Statistics
Recorded events User login or logout Session created or destroyed Channel definitionpublished, modified, or removed Channel added, updated, moved, or removed from layout Folder added, updated, moved, or removed from layout Channel instantiated, rendered, targeted Usage Statistics
Usage Statistics PrintingStatsRecorder
Packaging and deployment of channel code and resources WEB-INF/cars directory .car files Car resource worker org.jasig.portal.car.CarResourceWorker Channel ARchives (CAR)
CAR Viewer (Car Lot ) CAR file is a zip containingchannel sources, stylesheets, and resources such as images Images areloadedfrom car file
Can now configure database in web container rather than portal’s rdbm.properties Database connection pooling PortalDb Configured in portal.properties PersonDb Configured in PersonDirs.xml JNDI Data Sources
uPortal Web Site http://mis105.mis.udel.edu/ja-sig/uportal/download.html uPortal-Only (2.1) Needs configuration Quick-start (2.1) Contains web container, db Getting uPortal - Distributions
CVS Repository at Univ of Delaware mis105.mis.udel.edu/cgi-bin/cvsweb.cgi/portal cvs -d:pserver:anonymous@mis105.mis.udel.edu:/home/cvs/jasig login cvs -d:pserver:anonymous@mis105.mis.udel.edu:/home/cvs/jasig export –r rel-2-1 portal cvs -d:pserver:anonymous@mis105.mis.udel.edu:/home/cvs/jasig export –D now portal Getting uPortal - CVS
Aggregated layouts Internationalization Composite permissions Channel previews Publishing and subscribing servants WSRP implementation Channel deployment automation In the works…
Experience constructed for the end user by the implementers/administrators of the portal combined with the end user's customized content System for constructing, managing, and administering grouped content, such that the presence and level of visibility of this content is guaranteed to appear in a users layout System allowing users to subscribe to grouped content Aggregated Layouts
Aggregated Layouts Fragment aggregation A user layout constructed from pre-defined layout fragments
Aggregated Layouts Subscribing to fragments Health & Legal Services Column User adding content that has been grouped by content administrators Tab by Faculty and course Departmental Calendar and Events Column