jasig portlet showcase
DESCRIPTION
From the 2012 Jasig-Sakai Conference, co-presented with Anthony Colebourne and Drew Wills. Along with uPortal, Jasig also sponsors a comprehensive range of compelling, off-the-shelf portlet projects you can use to assemble an effective campus portal in little time. The last year has been a big one for Jasig portlets: we've seen some exciting new projects, as well as lots of incremental features, improvements, and bug fixes in some of the best known portlets. This session will review and showcase these recent developments. We will discuss: - New portlets in Jasig - Development highlights for existing portlets - The impact of uMobile on Jasig portlets - JSR-286 portlets (Java Portlet 2.0) - Emerging patterns for portlet development - New portlets bundled with uPortal If you're thinking of implementing uPortal or uMobile, or if you already have a campus portal based on uPortal and need to catch up with new developments, this session is for you. This is a high-level, highly visual overview: uPortal and Java platform knowledge is not required.TRANSCRIPT
Jasig Portlet ShowcaseAnthony Colebourne
Drew WillsJen Bourey
Jasig / Sakai Conference 2012 Atlanta, June 13th
• In the “old days,” the uPortal framework benefited from collaboration, but the content that went into it mostly did not
• A few of the very best channels & portlets were shared via email
• Occasionally a community portlet was posted to JIRA / CVS/ Subversion as a code dump
• New adopters implemented such portlets by forking them in their own repositories
About This Session
• Today there are a wide variety of compelling portlets available through Jasig
• They operate like real software projects
• Code in GitHub
• Issues in JIRA
• Multiple institutions contributing
• Active, ongoing development
• These portlets are the low-hanging fruit
• New adopters should implement these portlets to-taste before looking elsewhere
That Was Then... This Is Now
Themes in Recent Portlet Development
• Move to GitHubTogether with uPortal, CAS, etc.
• Simplifies adoption and maintenance
• Easier for non-committers to contribute patches
Migration to GitHub
• Enables cross-context requests to uPortal REST services
• Access any uPortal REST API from a portlet (e.g. groups, permissions, user attributes, etc.)
• New in Jasig/portlet-utils (on GitHub)
•
Cross-Context Invoker
• Allows portlets to add their own results to portal search queries
• Based on JSR-286 portlet events, which means there's a PortletRequest and results can be user-specific!
• Current Search Examples
• Simple Content Management portlet
• Directory portlet
• uPortal Search portlet
uPortal Search API
• Define form elements
• Used by calendar portlet administration UI
• Early version available in portlet-utils project
Form API
• Reusable utilities for automating UX optimization
• Minification
• Aggregation
• GZipping
• Resource caching
• Cache public resources across users
• Set ETags for content
Performance
• Link between portlets
• Display location in map
• Display user in directory
• Configurable
• Override default to direct to university-specific website
Interportlet Links
• Quickly create simple portlet project
• Supports Spring PortletMVC, JSR-286
• Includes sample controllers, desktop and mobile views
• http://www.youtube.com/watch?v=06kJr4SnP94
Portlet Maven Archetype
mvn archetype:generate -DarchetypeGroupId=org.jasig.portlet.archetype -DarchetypeArtifactId=jsr286-archetype
• New mobile views for many Jasig portlets
• Performance improvements
• Brand new content driven by uMobile project
• Integration with uMobile native application
Mobile Support
uMobile Native App
• Native smartphone and tablet support for iOS and Android
• Persistent authentication
• Integration with native map features
• Ability to display mobile portlet views
Portlet Projects
Jasig Portlets Space
Student Success Plan (SSP)
• Software & processes for student success
• Increases the persistence, success, and graduation rates of targeted students
• Through holistic counseling, web-based support systems, and intervention techniques, students are identified, supported and monitored
SSP: Jasig Incubating Project
• Case Management Software
• Early Alert
• Student Interface
• Student Information System (SIS) Integration
• Reporting Tools / Data Collection
SSP Features
Notifications Portlet
• Aggregates notifications from several sources into a single view
• Accordion style display of notifications by categories
• Displays error messages that can be deleted from the view
• Loose data model allows for any type of notification
• Caches data / provides refresh option
Notifications Portlet
• Searchable contacts
• Pushed contacts
• Save contacts
SearchAdapterpublic ContactSet search(String searchText);
PushAdapterpublic Set<ContactSet> getContacts();
PersistAdapterpublic boolean save(Contact contact);
Contacts Portlet
Contacts Portlet
• 3.0.2 (Portlet 2.0)
• 2.0.1 (Portlet 1.0)
• Mobile friendly
• Improved performance
• Video support
NewsReader Portlet
NewsReader Portlet
Map Portlet
• Search campus locations
• Browse by category
• Display location details, image
Map Portlet
• Student-specific course list
• Course information and announcements
• Grades and GPA
• Supports multiple data sources
• LMS, SIS
Courses Portlet
Courses Portlet
• Provide university-focused content
• Consumes REST feeds defined by XSDs
• Content for
• Dining menus
• Athletics news and sports scores
• Computer lab availability
• Laundry availability
Campus Life Portlets
Campus Life
Campus Life
• Brand-new portlet contribution from Ft. Lewis
• Post ads by category
Classifieds Portlet
• Read-only calendar feed aggregator
• Distribute calendar feeds by role, override with user preferences
• Supports iCal, CalDAV, XML, Exchange, custom integrations
• Offers delegated authentication to personal calendars
Calendar Portlet Overview
Phone
Desktopin-page
MobileMobile
Tablet
• Massive performance improvements
• Time zone fixes
• Administration UI Updates
• New mobile views
Calendar Improvements
What’s Next?
Adopting New APIs
• Configure existing projects with
• Search
• Badge Numbers
• Administrative UI Forms
Data Migration
• Add import/export library for portlet use
• Integrate portlet data migration, import into uPortal build
Participation
• You can contribute by sharing
• Code
• Testing
• Use cases
• Portlet wish list
• https://wiki.jasig.org/display/PLT/Portlet+Wish+List