+ All Categories
Transcript
Page 1: Jasig Portlet Showcase

Jasig Portlet ShowcaseAnthony Colebourne

Drew WillsJen Bourey

Jasig / Sakai Conference 2012 Atlanta, June 13th

Page 2: Jasig Portlet Showcase

• 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

Page 3: Jasig Portlet Showcase

• 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

Page 4: Jasig Portlet Showcase

Themes in Recent Portlet Development

Page 5: Jasig Portlet Showcase

• Move to GitHubTogether with uPortal, CAS, etc.

• Simplifies adoption and maintenance

• Easier for non-committers to contribute patches

Migration to GitHub

Page 6: Jasig Portlet Showcase

• 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

Page 7: Jasig Portlet Showcase

• 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

Page 8: Jasig Portlet Showcase

• Define form elements

• Used by calendar portlet administration UI

• Early version available in portlet-utils project

Form API

Page 9: Jasig Portlet Showcase

• Reusable utilities for automating UX optimization

• Minification

• Aggregation

• GZipping

• Resource caching

• Cache public resources across users

• Set ETags for content

Performance

Page 10: Jasig Portlet Showcase

• Link between portlets

• Display location in map

• Display user in directory

• Configurable

• Override default to direct to university-specific website

Interportlet Links

Page 11: Jasig Portlet Showcase

• 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

Page 12: Jasig Portlet Showcase

• New mobile views for many Jasig portlets

• Performance improvements

• Brand new content driven by uMobile project

• Integration with uMobile native application

Mobile Support

Page 13: Jasig Portlet Showcase

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

Page 14: Jasig Portlet Showcase

Portlet Projects

Page 15: Jasig Portlet Showcase

Jasig Portlets Space

Page 16: Jasig Portlet Showcase

Student Success Plan (SSP)

Page 17: Jasig Portlet Showcase

• 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

Page 18: Jasig Portlet Showcase

• Case Management Software

• Early Alert

• Student Interface

• Student Information System (SIS) Integration

• Reporting Tools / Data Collection

SSP Features

Page 19: Jasig Portlet Showcase

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

Page 20: Jasig Portlet Showcase

Notifications Portlet

Page 21: Jasig Portlet Showcase

• Searchable contacts

• Pushed contacts

• Save contacts

SearchAdapterpublic ContactSet search(String searchText);

PushAdapterpublic Set<ContactSet> getContacts();

PersistAdapterpublic boolean save(Contact contact);

Contacts Portlet

Page 22: Jasig Portlet Showcase

Contacts Portlet

Page 23: Jasig Portlet Showcase

• 3.0.2 (Portlet 2.0)

• 2.0.1 (Portlet 1.0)

• Mobile friendly

• Improved performance

• Video support

NewsReader Portlet

Page 24: Jasig Portlet Showcase

NewsReader Portlet

Page 25: Jasig Portlet Showcase

Map Portlet

• Search campus locations

• Browse by category

• Display location details, image

Page 26: Jasig Portlet Showcase

Map Portlet

Page 27: Jasig Portlet Showcase

• Student-specific course list

• Course information and announcements

• Grades and GPA

• Supports multiple data sources

• LMS, SIS

Courses Portlet

Page 28: Jasig Portlet Showcase

Courses Portlet

Page 29: Jasig Portlet Showcase

• 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

Page 30: Jasig Portlet Showcase

Campus Life

Page 31: Jasig Portlet Showcase

Campus Life

Page 32: Jasig Portlet Showcase

• Brand-new portlet contribution from Ft. Lewis

• Post ads by category

Classifieds Portlet

Page 33: Jasig Portlet Showcase

• 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

Page 34: Jasig Portlet Showcase

Phone

Desktopin-page

MobileMobile

Tablet

Page 35: Jasig Portlet Showcase

• Massive performance improvements

• Time zone fixes

• Administration UI Updates

• New mobile views

Calendar Improvements

Page 36: Jasig Portlet Showcase

What’s Next?

Page 37: Jasig Portlet Showcase

Adopting New APIs

• Configure existing projects with

• Search

• Badge Numbers

• Administrative UI Forms

Page 38: Jasig Portlet Showcase

Data Migration

• Add import/export library for portlet use

• Integrate portlet data migration, import into uPortal build

Page 39: Jasig Portlet Showcase

Participation

• You can contribute by sharing

• Code

• Testing

• Use cases

• Portlet wish list

• https://wiki.jasig.org/display/PLT/Portlet+Wish+List

Page 40: Jasig Portlet Showcase

Top Related