X-Project Mobile Strategy

25 views
Skip to first unread message

Mike Brock

unread,
Mar 24, 2012, 12:19:41 PM3/24/12
to jbos...@googlegroups.com
AeroGear is clearly the umbrella project leading the mobile strategy at JBoss. But Errai and RichFaces clearly are mobile capable frameworks. 

On the Errai side, we have some key ideas for mobile integration around the use of CDI events for device integration (orientation, location, etc). We're also building an offline data storage solution and data sync solution to power our client-side JPA. While initially these things will be restricted to Errai, within GWT, it would be cool to start talking about what the POH5 and RichFaces guys need from us to make our stuff consumable outside the GWT world.

Conversely, we should talk about how we can leverage the AeroGear effort to bring Errai into the mobile strategy, alongside POH5 and RichFaces.

So, voila! Thread started!

Jay Balunas

unread,
Mar 26, 2012, 8:57:18 AM3/26/12
to jbos...@googlegroups.com, Jay Balunas
Thanks for getting this thread started, I think its important that we sync up on this!

On Mar 24, 2012, at 12:19 PM, Mike Brock wrote:

AeroGear is clearly the umbrella project leading the mobile strategy at JBoss. But Errai and RichFaces clearly are mobile capable frameworks. 

Could not agree more, and I would also add in Portal here, they have been working on their mobile spec for little while now [1].

Imo each project needs to push forward with mobile development in directions that make the most sense for them.  I.e. what the JSF developer is looking for, might not be what the POH5 developer is.  However we should make sure that where possible it also looks like the mobile features are related and look for places to cross-polinate (as you mention below).  


On the Errai side, we have some key ideas for mobile integration around the use of CDI events for device integration (orientation, location, etc). We're also building an offline data storage solution and data sync solution to power our client-side JPA. While initially these things will be restricted to Errai, within GWT, it would be cool to start talking about what the POH5 and RichFaces guys need from us to make our stuff consumable outside the GWT world.

The conversations we had a few months back (?) about an errai.js type approach seemed like a great integration point.  We should discuss your roadmap and possible timings for some of this, as data sync, websockets, are just two of the areas I could see us working together on.  MetaWidget is another area where an Errai/GWT like core, exposed as a static JS could be good.

Specifically to the data sync you mention above - in some ways it will be easier to develop a core data sync solution in Errai, and expose client side api's for JS.  In that situation I could see a static errai.js (?) being used as a core, with an AeroGear abstraction, or usability wrapper.

For all of this, a strong focus on usability between the target developers will be key.  I.e. POH5 developers may expect a very different api in JS, than what errai.js can provide.  This is one area where AeroGear can help Errai be consumed outside of the GWT world.  

It also means that we'll have a much better cohesive solution, rather than 5 different approaches.  Not that having these different approaches is bad, it is even needed for proper evolution of our projects.  But we should certainly be looking where to integration, and cross pollinate.  I think that RichFaces would also benefit from discussions like this.  


Conversely, we should talk about how we can leverage the AeroGear effort to bring Errai into the mobile strategy, alongside POH5 and RichFaces.

+1, and I think there are lots of way AeroGear can help Errai and RichFaces.  One area I'd like to see errai go is hybrid applications with Cordova.  As it can produce a pure JS client, it is possible to "bundle" that into a native app, but the details would need to be worked out.  Perhaps this is something the AeroGear team could produce and assist with usability, and expectations?


So, voila! Thread started!


Jay Balunas

unread,
Apr 2, 2012, 8:55:25 AM4/2/12
to jbos...@googlegroups.com, Jay Balunas
I know we've all been crazy this last week, but I wanted to follow up on this thread.  I think it is important for how we are going to move forward with mobile at JBoss.  

This is not just about errai, and aerogear, but effects many other projects.  I think it would be good to hear from others!

Rodney

unread,
Apr 2, 2012, 12:26:01 PM4/2/12
to jbos...@googlegroups.com, Jay Balunas
I've sent an email to Thomas to see if we can get someone from the portal project to join the thread.

Brian Leathem

unread,
Apr 2, 2012, 1:00:51 PM4/2/12
to jbos...@googlegroups.com, Jay Balunas
RichFaces current mobile status is summarized at:
https://community.jboss.org/wiki/RichFacesMobile

Our current strategy involves adapting the slidfast work that Wesley began for the showcase into something usable for building real-world JSF applications.  The slidfast javascript code is what enables us to create jsf applications with a single page approach, using ajax calls and CSS3/HTML5 transitions to animate the page transitions. These applications are built with a subset of the current RichFaces components, including some additional CSS and javascript for improved mobile compatibility.

Our short term goals involves nailing down the slidfast interaction model, and defining some JSF components and behaviours to encapsulate the required javascript.  This approach continues to leverage our existing visual components.  We'd also like to look into using HTML5 pushState in the slidfast codebase, rather than the current location hash approach.

Future plans involve creating mobile specific component renderers and altogether new components to allow us to take advantage of HTML5 / mobile specific APIs at the component level.  Client side storage is particularly appealing to us for creating paging components that can buffer/pre-fetch iteration data.  Further research/discussion in this area is required.

As for integration with Errai, it would be interesting to see what could be gained by integrating the errai bus into our push component, where we currently use Atmosphere.  A discussion on potential advantages of such an integration would be useful.

Brian
Reply all
Reply to author
Forward
0 new messages