Friday, 7 September 2007
Ajax on the iPhone with ICEfaces
« The language for Ajax with ICEfaces is JSF | Main | Layered Ajax Security »The href="" http:_="http:_" iphone="iphone" shape="rect" www.apple.com="www.apple.com">iPhone is a very impressive piece of engineering; and even more impressive is that it's great for running ICEfaces Ajax applications, including the use of Ajax Push. All of the ICEfaces sample applications work, including a mobile chat page created specifically for mobile devices (pictured below on the iPhone). As an application developer working with ICEfaces, we believe you will find it straightforward to target the iPhone. (Note that some layout adjustments specifically for the iPhone are not yet on the public demo server -- these adjustments fix the positioning of the scroll buttons so that they actually appear on the screen.)
The iPhone truly represents the desired configuration of a mobile device. It has certain inherent limitations (bandwidth, power, memory, and size), but otherwise is a fully functional internet device supporting the World Wide Web as we know it. It achieves this high degree of standards compliance by taking full advantage of the display and processing resources possible in a device of its size.
What doesn't work on the iPhone?
Most noticeably, drag-and-drop. Drag-and-drop gestures are occupied by the scrolling interface of the iPhone. This was a perfectly reasonable design decision, since drag-and-drop is rarely encountered on the web and typical mobile devices waste valuable screen space with barely usable scrollbars. (However, we're still interested in providing drag-and-drop on the iPhone, so will explore a click-lock mechanism.)
Also, "select" controls are awkward. It's difficult (impossible?) for the user to manipulate a tiny menu within the page, so interaction with select controls causes a large select interface to appear at the bottom of the screen (not unlike the virtual keyboard). It's probably best to design mobile interfaces without select controls.
(Admittedly, there may be other ICEfaces features that don't yet work on the iPhone; we haven't fired up any Selenium tests on it yet.)
You can download ICEfaces from MacUpdate or directly from ICEfaces.org. We look forward to hearing your feedback on the ICEfaces forums.
Posted by at 12:22 PM in Entries by Ted Goddard
[Trackback URL for this entry]