In recent days there was an article written by Sony Mathew that was referenced on TheServerSide.com comparing RIA Framework which I found really interesting. Unfortunately the ADF Faces RC was not included as well as others. So I'm including the ADF Faces missing column in this post.
Also you can check the JavaFX/Java column thanks to Alexander Bell
| Category | Oracle ADF Faces RC |
| Platform/Technology | Browser Based (JSF, AJAX embedded, JavaScript, Java) |
| User Experience | Very Rich No full page refresh, Partial Page Rendering, all data-access rendering in the server side with option of client side actions implemented in JavaScript |
| Browser Support | FireFox 2.0/3.0 Internet Explorer 7.0 Safari 3.0 Mobile Browsers for use with ADF Mobile Windows Mobile Pocket IE for Windows Mobile 5, 6 BlackBerry Browser 4 |
| UI Code | JSF/Java & optional JavaScript for client side events. Styled by custom CSS&JSF Templates |
| Access Remote Services & Data. | Support for access services and data from WebServices,URL, EJB,POJO, MS tools (Excel) through the implementation of JSR 227 for data bindings. |
| Code Complexity Management | JSPX (JSP&XML) files, Java files, XML files, Organize into Class/Object hierarchies, Packages, Modules & Libraries. |
| Tool Support / Eclipse Integration | Declarative WYSIWYG editor, property inspector, component palette within JDeveloper (FREE). Source coding and compilation within any Java EE IDE |
| Refactoring & Code-Completion Support | Out-of-the-box support within JDeveloper |
| JEE Integration | Is an end-to-end Java EE Framework can be pack within JAR/WAR/EAR and ADF libraries |
| Migration | Can integrate with existing Web-Apps through linking it requires a certified container to run new pages. Can access existing business services and consume Web pages from existing apps. |
| Performance | Modest startup time, Responsiveness relative to size of the app and volume of data, although it implements advanced streaming capabilities as well tuning options at the UI level and at the controller level (binding layer) for large scale applications |
| Static-Content (Externally Managed) | Can mix in HTML & CSS as-is or modified. Can parse XML content or plain-text and make use of the f:verbatin form JSF to embed HTML content within a JSF page and uses the inlineFrame to load external content. |
| Testing | Con be tested using common testing tools for Java EE applications. Within JDeveloper can use HTTP Analyzer, JUnit, profilers, Maven, Selenium for unit testing the interface and the embedded JavaEE container. |
| Accessibility | All ADF Faces RC components have accessibility properties and developers have access to the accessibility guidelines from the developer's guide. |
| Printing | out-of-the-box support for defining printing regions and operations on top of specific components. |
| Search Engine Optimization | Not directly compatible (embed host pages with search terms). |
