Hi Frédéric, While Jasig doesn't use JSF, we've so far developed several portlets that are capable of displaying both mobile and desktop views. The development strategy so far has been fairly straightforward, and I believe fairly successfully. Most of our portlets use Spring 2.5 with annotation-based controllers, combined with JSTL-based JSPs for the view layer.
We've generally written some sort of IViewSelector interface to assign JSPs appropriately to user requests. It's worth noting that often these take both the browser's user agent and the portlet window state into consideration (we've found that often the non-focused view of portlets looks similar, or even overlaps with, the mobile view). If you're interested in looking at sample mobile/desktop portlets that Jasig has already developed, the Calendar, Announcements, and Course Schedule portlets might all be good candidates. Jasig makes an effort to ensure that portlets can be used in portals other than uPortal, and the view selector interface allows adopters to potentially plug in another implementation if the default doesn't work for the selected environment. For example, in Liferay 5.x it's not possible to get the user-agent from the portlet request properties list, but we were able to get around that issue with an alternate implementation. It seems like moving from custom regex parsing to using WURFL might be an improvement for browser detection. I know that's a library that Steve Swinsburg recommended in an earlier thread as well. I have to admit that I'm not personally familiar with WNG, so I'm not quite sure what use case its designed to meet. I'll certainly take a look at it, but I'd love to hear what you all are planning to use it for. The one note of caution about user agent-based view selection is that we've recently discussed a requirement for allowing users to select which portal view is displayed on a mobile device. For example, an iPhone user might decide for some reason that they'd like to toggle between the full/desktop and mobile views of the portal. To be able to implement that sort of feature, we'd need to have the portal get some sort of string representing the current portal theme and perform view selection based on that, rather than the user agent string. We've initially had reservations about doing this since it seems like it would bring too much information about uportal into the portlet, but it seems like that feature is going to be increasingly expected from a mobile portal. I noticed that your list of desired mobile portlets does overlap significantly with some of the current Jasig portlets. The Jasig calendar portlet already has a mobile view, and Jasig also has RSS (News Reader) and LDAP directory search (called the Tabbed Search Portlet) that seem likely to acquire mobile views sometime soon. I don't know if any of those might meet your needs, or be a suitable starting point for adding new features, but it would be terrific to be able to collaborate on mobile development between Jasig and ESUP Portail. One last technical clarification: If this work is targeting uPortal 3.2, it seems like a Tomcat filter might not be a viable option. I believe it's the case that filters can't be applied to portlet requests until JSR-286, which uPortal does not support. However, as I've described above, we've been successful with performing JSP view selection from Spring-based portlet controllers. - Jen On Nov 22, 2010, at 10:59 AM, Frédéric Ravetier wrote: > Hello, > > I am the project manager for the "ESUP Mobile Project", working at > Anyware-Services. > We started the development last week. Our first portlet is a portlet to > display messages (email from an IMAP server that is under CAS). > Note that most of the ESUP portlet are using JSF (which is a real difficulty > to use the taglib WNG from Wurfl with JSF). Also the goal is to have a > multi-channel portlet (available to display data on mobile and desktop). > > Our strategy is: > 1- to develop a web portlet with a default and simple skin (based on JSF) > 2- build a filter (tomcat filter) based on WURFL to detect if the user is > using a mobile or a desktop browser > 3- make a mechanism to choose the JSP depending of the detection (mobile to > use WNG taglib - from WURFL - or desktop to use classic JSF taglib) > 4- modify the WNG taglib to work in an JSF environment. > > The last step may failed or may be too hard or too complicate to maintain. In > this case we will reduce our constraints and we will use another taglib to > render data to mobile. We already think about Trinidad. If you have > suggestion I am open to them. We'd like to avoid framework or library that > are only webkit compatible, because we'd like to support many mobile browsers > and not only iphone and smartphone. It is a wish that can be reduce depending > on the complexity and the maintainability. > > Why WURFL, because it is THE taglib known by most of the mobile developers > that want a real compatibility with most of the mobiles. > > We are currently at step 2. We made the step 1 with some small doubt on step > 1 because of the CAS environment, we do not have an IMAP that support CAS > here. > > Do you have suggestions? > Do you have others informations? > Do not hesitate to contact me in order to have more information or to share > some knowledge. > > Then we will have some others portlet to enhance or to develop (Calendar, > Directory based on LDAP, news, ...) > > Let me know if you prefer another discussion channel than this one. > > Sincerely, > > Frédéric Ravetier > Project Manager > Anyware-Services (www.anyware-services.com) > frederic.ravet...@anyware-services.com > Phone: +33 5 62 19 19 03 > Ametys: The CMS Java Open Source www.ametys.org > > > Le 22/11/2010 16:03, Jonathan Markow a écrit : >> >> I recently had a conversation with Alain Mayeur, director of ESUP Portail, >> the nation-wide consortium of French universities that have developed a >> "Digital Work Space" based on uPortal, CAS, and a host of other open source >> applications that they have developed or integrated. Alain told me about >> two projects currently underway that are of interest to Jasig. >> >> The first one is the ESUP Mobile Project. With several participating >> universities, this project is working to coordinate the development of >> mobile services supported by the mobile framework in uPortal 3.2. The wiki >> page for the project (in French) is located at >> http://www.esup-portail.org/display/PROJESUPMOBILE/Projet+ESUP+Mobile. >> >> A second project, also the result of a collaboration among several >> organizations, is designed to enhance the content management capabilities of >> uPortal. >> >> Alain will ask the project leads to send us more information about these >> initiatives. I am hoping there might be some areas in which Jasig >> developers would be able to contribute. >> >> -Jonathan >> >> -- >> >> You are currently subscribed to uportal-dev@lists.ja-sig.org as: >> frederic.ravet...@anyware-services.com >> To unsubscribe, change settings or access archives, see >> http://www.ja-sig.org/wiki/display/JSG/uportal-dev > > -- > > You are currently subscribed to uportal-dev@lists.ja-sig.org as: > jennifer.bou...@gmail.com > To unsubscribe, change settings or access archives, see > http://www.ja-sig.org/wiki/display/JSG/uportal-dev -- You are currently subscribed to uportal-dev@lists.ja-sig.org as: arch...@mail-archive.com To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-dev