1 Web Portal Project - - Lee, Austin - Narayan, Sujeeth - Viswanathan, Arun CS 526 Class Project
Jan 15, 2016
1
Web Portal Project
- -Lee, Austin
-Narayan, Sujeeth-Viswanathan, Arun
CS 526 Class Project
28 – Apr - 2005 Web Portal 2
Agenda
Part 1 – Portals Introduction Part 2 – uPortal Introduction Part 3 – uPortal Architecture Part 4 – Channels Part 5 – Individual Explorations Part 6 - Conclusion
28 – Apr - 2005 Web Portal 3
Motivation
Yes!! Portal jobs in market!! Middleware Technologies – Portlets,
WebServices, XML, CSS,… CU-Boulder has implemented. UCCS
too.. Bigger team size, different experiences
and more learning
28 – Apr - 2005 Web Portal 4
What is a Portal ?
Portals wrap an organization’s documents and applications in a single
web interface that provides distributed access, cross-platform usability,
personalization, management, and security features.
28 – Apr - 2005 Web Portal 5
List of Portal Features
• Categorization of content (taxonomy)
• Content management & aggregation
• Personalization
• Robust application integration
• Development tools
• Mobile/wireless support
• Single Sign-On
• Security
28 – Apr - 2005 Web Portal 6
Available Portals
Open Source Portals with Java eXo JetSpeed – Apache WebSphere Portal – IBM uPortal - JASIG
Open Source Portals with Microsoft Technologies DotNetNuke Rainbow
Others PHPNuke, Microsoft Share Point, Oracle Portal, Peoplesoft Portal,..
28 – Apr - 2005 Web Portal 7
Portals Survey
Survey by: http://portlets.blogspot.com
28 – Apr - 2005 Web Portal 8
Part 2 – uPortal Introduction
28 – Apr - 2005 Web Portal 9
What is uPortal ? Developed under JA-SIG (Java in Administration Special
Interest Group) by institutions of higher-education including Princeton, Yale, and University of Delaware
An open source, open standards effort built upon Java, XML, XSL, JSP, J2EE, and JDBC
More of a framework for building custom portals than a proper portal
28 – Apr - 2005 Web Portal 10
uPortal extended - SAKAI
Developed by Universities – MIT, Stanford, Indiana and O.K.I
SAKAI = Collaboration & Learning Environment Includes :
• Course Management System
• Research collaboration system
• Tool Portability Profile Tool – standard for future educational application
SEPP – Sakai Education Partners Program
28 – Apr - 2005 Web Portal 11
uPortal Sample Screen
28 – Apr - 2005 Web Portal 12
Part 3 - uPortal Architecture
28 – Apr - 2005 Web Portal 13
Architecture
DB
ExternalWeb
Resources
Web Browser
ApacheJava Servlet
Engine
ServletConnector uPortal
Framework
JavaChannels
28 – Apr - 2005 Web Portal 14
System Requirements
Microsoft Windows Solaris Linux Mac OS X
28 – Apr - 2005 Web Portal 15
Software Requirements
Sun JDK 1.3 or above Ant 1.5.3 or above (Java build tool) Servlet Container/Engine compatible
with Servlet 2.2 and JSP 1.1 API (Tomcat 3.3.2)
JDBC Compliant Database (Hypersonic SQL)
28 – Apr - 2005 Web Portal 16
Browser Compatibility
Netscape 4 and above Internet Explorer 4 and above Mozilla 5 and above
28 – Apr - 2005 Web Portal 17
J2EE
The portal architecture can take advantage of the J2EE services provided by the Web Container.
Can use JMS, JTA as available Can handle Applets, Servlets, JSP
pages
28 – Apr - 2005 Web Portal 18
Custom Channel Creation
Custom channels are written in Java: CHelloWorld.java
CHelloWorld.ssl (stylesheet) normal_explorer.xsl normal_netscape.xsl about.xsl (optional)
28 – Apr - 2005 Web Portal 19
Portlet
Packaged channel Requires compiled java class(es) Portlet library (lib/portlet-api-1.0.1.jar) Web descriptor (portlet.xml) When finished, package into a JAR file,
then rename to .war
28 – Apr - 2005 Web Portal 20
Pushed Fragments
A channel forced on a group of users Fragment owner has access to modify
settings of a fragment
28 – Apr - 2005 Web Portal 21
Part 4 - Channels
28 – Apr - 2005 Web Portal 22
Channel Types
Custom Applet Image Inline Frame Portlet RSS Web Proxy WSRP Consumer XML Transformation
28 – Apr - 2005 Web Portal 23
Channels - Demo
28 – Apr - 2005 Web Portal 24
Individual Explorations
28 – Apr - 2005 Web Portal 25
System Info
OS: Fedora Core 3 (2.6.11 kernel)Processor/Memory: Pentium 4, 256 MBBrowser: Mozilla Firefox v1.0.3uPortal Quick Start v2.4.2JDK v1.4.2 & v1.5.0
28 – Apr - 2005 Web Portal 26
Configuration
Download zip fileExtractSet JAVA_HOME, PATH env variablesStart up HSQL server and Tomcat serverOn browser, http://localhost:8080/uPortalLogin as admin, developer, demo,
student, faculty, staff
28 – Apr - 2005 Web Portal 27
My Channel
A campus news channel (RSS)• current happenings
• discussion forums
• student comments
Weather channel ( WSRP)Usage-tracking functionality
(implement?!)
28 – Apr - 2005 Web Portal 28
Individual Explorations
28 – Apr - 2005 Web Portal 29
PayPal Channel - Demo
28 – Apr - 2005 Web Portal 30
MySQL caveat
Documentation refers to older version of MySQL and JDBC connector
Current version (MySQL 4.1.11 and MySQL-JDBC-Connector 3.1.8) uses different naming schemes when you modify dbloader.xml, names and versions must be exact! (see JdbcExample1.java)
28 – Apr - 2005 Web Portal 31
Individual Explorations
28 – Apr - 2005 Web Portal 32
Classifieds Channel Goals:
• Enable users to have a separate classifieds channel
• It could be either push-fragment or user subscription
• Classifieds publish time frame
• Customizable by user • Only Titles and Link (View)• Title and Details (View)• Subscribe to interested Categories – Cars , Rental
28 – Apr - 2005 Web Portal 33
Classifieds - Roles
Admin Channel Admin
• Content Manager
• Time Frame Manager
Request User• Fill in the content details and time period
General Users
• Subscribe to the channel
28 – Apr - 2005 Web Portal 34
Classifieds Channel - Design Built using XML and Portlets
XML Schema used : <Classifieds>
<Classified>
<Title></Title>
<Details></Details>
<Link></Link>
</Classified>
</Classifieds>
28 – Apr - 2005 Web Portal 35
Design (Continue)
Portlet JSR -168 Use IPersonal Interface by uPortal for
user Identification
28 – Apr - 2005 Web Portal 36
Part 6 - Conclusion
28 – Apr - 2005 Web Portal 37
Lessons Learnt uPortal documentation refers to old versions, and/or is
incomplete JDK 1.4 or higher....but JDK 1.5.0?
• RSS Portlet example fails to render with 1.5.0 CLASSPATH is also necessary when using the JDBC database connector JAR Environment variable setting
• Set them once-and-for-all Running uPortal
• First time, start both servers as root user
• Subsequent startup, no need to be root
• Not mentioned in README!! Modify ant.bat (or ant.sh) with fixed path of Ant folder. Use ‘ant deploy’ in uportal folder to recompile java for your JDK!
28 – Apr - 2005 Web Portal 38
References
www.uportal.org www.sakaiproject.org www.cuconnect.colorado.edu www.portlets.blogspot.com www.w3c.org http://people.emich.edu/kmanickam/
uportal_2_0_1/channel_2_0_1.htm www.mysql.com
28 – Apr - 2005 Web Portal 39
Questions ??