Tues, Dec 10, 2002 JA-SIG Conference, Orlando, FL Ken Weiner, Interactive Business Solutions...
-
date post
22-Dec-2015 -
Category
Documents
-
view
213 -
download
0
Transcript of Tues, Dec 10, 2002 JA-SIG Conference, Orlando, FL Ken Weiner, Interactive Business Solutions...
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Ken Weiner, Interactive Business Solutions
Introducing uPortal 2.1
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Overview
• Release timeline
• New features in uPortal 2.1
• Beyond uPortal 2.1
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
2001 20032000 2002
1.0Jul 2000
1.5Feb 2001
1.6Jun 2001
2.0Feb 2002
2.0.1Apr 2002
2.0.2Jul 2002
2.0.3Dec 2002
2.1Dec 2002
1st Release
Roles
Performance
Architecture
New features
uPortal Release Timeline
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
New features
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
CWebProxy Enhancements
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
ICC Registry
• Inter-channel communication registryorg.jasig.portal.ICCRegistry
• Available in channel static datastaticData.getICCRegistry()
• Registering– Add/remove channel pairs
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Channel Rendering GroupsChan A
Chan F
Chan D
Chan B Chan E
Chan C Chan J
Chan G
Chan H
setRuntimeData()renderXML()
Chan A, D, G
Chan B
Chan C, E, F, H
Chan J
1st2nd
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
uPortal
Chann
els
Web
Ser
vic e
uPortal
Chann
els
Swing client
SOAP
WSDL
Remote Channel Web Service
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
• Uniquely identifies a published channel within an instance of uPortal
• UP_CHANNEL
Channel Functional Name (fname)
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Web
Se r
vic e
WebServiceClient
Authenticate
WSDL
Instantiate channel
Render channel
Free channel
Logout
credentials
fnameinstance identifier
instance identifier, runtime datachannel markup
instance identifier
Receive eventinstance identifier, portal event
Remote Channel Web Service
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
• 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>
Sessions
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
<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>
WEB-INF/server-config.wsdd
Web Service Deployment Descriptor
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
org.jasig.portal.utils…AbsoluteURLFilterXHTMLURLFilterWMLURLFilter
Add
bas
e U
RL
<img src=“picture.gif”/>
<img src=“http://remoteportal.edu/picture.gif”/>
URL Rewriting
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Source: http://www.oasis-open.org/committees/wsrp/presentations/wsrp_overview.ppt
Web Services for Remote Portals (WSRP)
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
WSRP Interface
• bindClient()
• createSession()
• createPortletInstance()
• getPortletMarkup()
• invokePortletAction()
• destroyInstance()
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Composite Groups
<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>
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
LDAP-Based 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>
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Object Locking and Caching
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Usage Statistics
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Usage Statistics
• Recorded events– User login or logout– Session created or destroyed– Channel definition
published, modified, or removed– Channel added, updated, moved,
or removed from layout– Folder added, updated, moved,
or removed from layout– Channel instantiated, rendered, targeted
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Channel ARchives (CAR)
• Packaging and deployment of channel code and resources
• WEB-INF/cars directory .car files
• Car resource worker– org.jasig.portal.car.CarResourceWorker
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
CAR Viewer (Car Lot )
Images areloaded
from car file
CAR file is a zip containingchannel sources, stylesheets, and resources such as images
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
JNDI Data Sources
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
uPortal Web Sitehttp://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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
CVS Repository at Univ of Delawaremis105.mis.udel.edu/cgi-bin/cvsweb.cgi/portal
cvs -d:pserver:[email protected]:/home/cvs/jasig logincvs -d:pserver:[email protected]:/home/cvs/jasig export –r
rel-2-1 portal
cvs -d:pserver:[email protected]:/home/cvs/jasig export –D now portal
Getting uPortal - CVS
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
In the works…
• Aggregated layouts
• Internationalization
• Composite permissions
• Channel previews
• Publishing and subscribing servants
• WSRP implementation
• Channel deployment automation
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Aggregated Layouts
• 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
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Aggregated Layouts
A user layout constructed from pre-defined layout fragments
Fragment aggregation
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Aggregated Layouts
Health & Legal Services Column
Tab by Faculty and course
Departmental Calendar and Events Column
User adding content that has been grouped by content administrators
Subscribing to fragments
Tues, Dec 10, 2002JA-SIG Conference, Orlando, FL
Internationalization
• Support for multiple locales
• Locale = Language + Country
• Levels of personalization– Site– Layout or profile– Channel
I18N