Discussions

News: Oracle ADF Faces Early Access Release Available

  1. Oracle is throwing it's weight behind JSF and has been publishing monthly early access drops of Oracle ADF Faces, a JSF component library that works with any JSF-compliant implementation (such as MyFaces or Sun's RI) and any IDE that supports JSF (such as JDeveloper). It supports multiple clients, including web browsers, PDAs, Telnet, Mobile, SMS, and IM.

    ADF Faces has features such as client-side validation, Partial Page Rendering, internationalization, multiple client support, and more. EA 16 was just released and features 89 components including a dialog/wizard framework.

    Asked about Oracle's vision for ADF Faces, Principle Product Manager Jonas Jacobi responded to TSS:

    Oracle's vision is for ADF Faces to enable developers to create complex clients using a rich set of user interface components that can be built in any JSF-compliant IDE, deployed on any JSF-compliant J2EE application server, and rendered on a wide array of end-user clients (from a browser, to a cell phone, to a telnet client). As one of the leading members of the JSF expert group, Oracle has devoted significant time and resources to develop JSF and will continue to play a leading role and contribute to the JSF JSR. We will also continue to evolve and continue to add new components to our JSF offering, including rich internet components (supporting Ajax) and support for peripheral user agents such as Printers, bar code readers and more.

    Resources:
    Listing of tags/features in ADF Faces core.
    Oracle JSF resources.
    Jonas Jacobi's blog.

    Threaded Messages (23)

  2. Oracle is throwing it's weight behind JSF and has been publishing monthly early access drops of Oracle ADF Faces, a JSF component library that works with any JSF-compliant implementation (such as MyFaces or Sun's RI) and any IDE that supports JSF (such as JDeveloper). It supports multiple clients, including web browsers, PDAs, Telnet, Mobile, SMS, and IM. ADF Faces has features such as client-side validation, Partial Page Rendering, internationalization, multiple client support, and more. EA 16 was just released and features 89 components including a dialog/wizard framework.
    Readme did not mention, that older containers like Tomcat4.x not supported. Firefox was freezing all over, MSIE is OK, but I did not understand what dialog demo does, and what is the point of all these popups. Did they want to emulate modal dialog window? They should rather use Javascript.

    Open /adf-faces-demo/faces/demos/launchDialog.jspx, click [...], enter two values in the popup window, submit, popup closes, the list shows the sum of two values. Whoa! Now click Back, then click Forward, see the same dialog pops up again, with no values in sight. The main window does not have the sum, that has been just calculated, either. Cancel the popup. Reload the page with the list. "Do you want to resend POSTDATA?". Actually, no, but I will say "Yes" only to get my value back. Oops, it pops up the dialog again. But at least now the main list contains the value, so I just close the dialog.

    I did not lose my my sleep. Oracle should better stick to database business, that is something that it can do.
  3. Open /adf-faces-demo/faces/demos/launchDialog.jspx, click [...], enter two values in the popup window, submit, popup closes, the list shows the sum of two values. Whoa! Now click Back, then click Forward, see the same dialog pops up again, with no values in sight. The main window does not have the sum, that has been just calculated, either. Cancel the popup. Reload the page with the list. "Do you want to resend POSTDATA?". Actually, no, but I will say "Yes" only to get my value back. Oops, it pops up the dialog again. But at least now the main list contains the value, so I just close the dialog.

    Actually, it seems to be working as expected within a POST cycle.

    Instead of doing simple math, lets say you were adding patient information.

    As you stated, the dialog transaction completes successfully and shows you the results (it works). You then hit the back button (leaving the completed transaction) and then forwarding to what would be a new transaction (adding a *new* patient). I don't see what your problem is?

    If you do play around with back and forwards, the browser correctly prompts you to see if you actually want to re-add that same patient information-- really... why are you complaining?

    -- Jacob
  4. Open /adf-faces-demo/faces/demos/launchDialog.jspx, click [...], enter two values in the popup window, submit, popup closes, the list shows the sum of two values. Whoa! Now click Back, then click Forward, see the same dialog pops up again, with no values in sight. The main window does not have the sum, that has been just calculated, either. Cancel the popup. Reload the page with the list. "Do you want to resend POSTDATA?". Actually, no, but I will say "Yes" only to get my value back. Oops, it pops up the dialog again. But at least now the main list contains the value, so I just close the dialog.
    Actually, it seems to be working as expected within a POST cycle.
    I don't think it works exactly as expected. Again, I am on the list page, I opened dialog, entered two values, submitted it, and dialog closes. Now I have the list page only, no dialogs. From this page I go back, and then forward. I expect to see the same page, without dialogs.
    Instead of doing simple math, lets say you were adding patient information.As you stated, the dialog transaction completes successfully and shows you the results (it works). You then hit the back button (leaving the completed transaction) and then forwarding to what would be a new transaction (adding a *new* patient).
    I am not against a *new* patient, I don't like the fact that I don't see data from the *old* patient, when empty dialog pops up.
    I don't see what your problem is?If you do play around with back and forwards, the browser correctly prompts you to see if you actually want to re-add that same patient information-- really... why are you complaining?-- Jacob
    Browser behaves exactly according to HTTP specs, I am OK with the browser. Instead of doing simple math, lets say I am a non-tech nurse or receptionist, adding patient information. Oops, I did something wrong, I clicked back, then forward, and I lost new patient's record. What do I do, what do I do? Reload, click. "Do you want to resent the information to the server?". I don't know... Do I? Don't I? I don't know what POSTDATA is!

    Anyway, if you don't try to reach for a shotgun when you see POSTDATA dialog or an unwanted popup, there is nothing to argue about ;-)
  5. Please try it truly, read the doc and look at the examples, learn JSF (or even another web framework?). Do something or spare us your comments.

    I've been using ADF Faces for 6 months. It's a pleasure to work with it and the set of components is becoming impressive. A webapp-developper's dream.

    I'm waiting now for the ability to change the look 'n feel of the components.

    The only question I wonder now is: what will be the licencing terms / cost of ADF Faces library?
  6. Oracle is throwing it's weight behind JSF and has been publishing monthly early access drops of Oracle ADF Faces, a JSF component library that works with any JSF-compliant implementation (such as MyFaces or Sun's RI) and any IDE that supports JSF (such as JDeveloper). It supports multiple clients, including web browsers, PDAs, Telnet, Mobile, SMS, and IM. ADF Faces has features such as client-side validation, Partial Page Rendering, internationalization, multiple client support, and more. EA 16 was just released and features 89 components including a dialog/wizard framework.
    Readme did not mention, that older containers like Tomcat4.x not supported. Firefox was freezing all over, MSIE is OK, but I did not understand what dialog demo does, and what is the point of all these popups. Did they want to emulate modal dialog window? They should rather use Javascript. Open /adf-faces-demo/faces/demos/launchDialog.jspx, click [...], enter two values in the popup window, submit, popup closes, the list shows the sum of two values. Whoa! Now click Back, then click Forward, see the same dialog pops up again, with no values in sight. The main window does not have the sum, that has been just calculated, either. Cancel the popup. Reload the page with the list. "Do you want to resend POSTDATA?". Actually, no, but I will say "Yes" only to get my value back. Oops, it pops up the dialog again. But at least now the main list contains the value, so I just close the dialog.I did not lose my my sleep. Oracle should better stick to database business, that is something that it can do.

    Michael, I'm sorry that you were not able to read the full installation guide, but we do actually support Tomcat 4.x. If you are using Tomcat 4.x add the following servlet mapping to <Tomcat>/conf/web.xml in the <servlet-mapping> section (its in the release notes http://www.oracle.com/technology/products/jdev/htdocs/partners/addins/exchange/jsf/doc/installation.html#Platform%20Information).

    <servlet-mapping>
     <servlet-name>jsp</servlet-name>
     <url-pattern>*.jspx</url-pattern>
    </servlet-mapping>

    If you are experience freezing in Firefox I would appreciate a reproducable testcase, since I'm not able to reproduce it with my install of Firefox and ADF Faces EA16 (having been using Firefox since it was first released and ADF Faces has worked fine for me).

    About your Javascript remark, I think you are missing the point here - the whole point behind having JSF components is that the developer doesn't need to handle Javascript level coding e.g. create dialogs or wizard like process flow - the component developer (in that case - Oracle) takes care of doing this for you.

    Regarding the dialog demo that is available in the demo bundle, I agree it is a bit lame, but it is a demo. The point of the dialog framework is to create a simulation of modal window behavior with minimal coding on the developer side. If you want to get more information about the dialog framework there are articles and how tos available (http://www.oracle.com/technology/jsf) that gets more into detail, or you can read this specific article (http://www.oracle.com/technology/products/jdev/101/howtos/adfdialog/index.html).

    Jonas Jacobi
  7. Firefox and Opera[ Go to top ]

    Michael, I'm sorry that you were not able to read the full installation guide
    I saw WAR file that I could drop into the Tomcat, and I saw readme. Would be convenient to have couple of lines on servlet container right in the readme.
    If you are experience freezing in Firefox I would appreciate a reproducable testcase, since I'm not able to reproduce it with my install of Firefox and ADF Faces EA16 (having been using Firefox since it was first released and ADF Faces has worked fine for me).
    I have official 1.0 release (Nov, 2004), popup blocker is on. When I first clicked on [...], Firefox showed its hint bar that popup window was blocked. Then it froze. On the next browser restart the application displayed a window that popup blocker is on, and should be turned off. I did not want to, instead, I decided to let only this window open. It opened. On the next popup with "Hello" Forefox displayed hint bar and froze again. Then I restarted Firefox and turned popups off. This time it worked, dialog with two number fields showed. Then I tried to activate main window, no dice, because the popup is modal. Then I clicked back on popup, but fields cannot be focused. Data cannot be entered, and caret was disabled, so I could not enter the numbers. The Submit and Cancel links worked, though.

    One more note on popups. Opera 7.52 shows popups, but with zero client size, only border, so you have to pull out the border to see the content. But that's ok with me, I don't use Opera anyway, since it does not honor "no-store" cache-control header (at least the way MSIE and Mozilla handle it).
  8. Firefox and Opera[ Go to top ]

    Michael, I'm sorry that you were not able to read the full installation guide
    I saw WAR file that I could drop into the Tomcat, and I saw readme. Would be convenient to have couple of lines on servlet container right in the readme.
    If you are experience freezing in Firefox I would appreciate a reproducable testcase, since I'm not able to reproduce it with my install of Firefox and ADF Faces EA16 (having been using Firefox since it was first released and ADF Faces has worked fine for me).
    I have official 1.0 release (Nov, 2004), popup blocker is on. When I first clicked on [...], Firefox showed its hint bar that popup window was blocked. Then it froze. On the next browser restart the application displayed a window that popup blocker is on, and should be turned off. I did not want to, instead, I decided to let only this window open. It opened. On the next popup with "Hello" Forefox displayed hint bar and froze again. Then I restarted Firefox and turned popups off. This time it worked, dialog with two number fields showed. Then I tried to activate main window, no dice, because the popup is modal. Then I clicked back on popup, but fields cannot be focused. Data cannot be entered, and caret was disabled, so I could not enter the numbers. The Submit and Cancel links worked, though.One more note on popups. Opera 7.52 shows popups, but with zero client size, only border, so you have to pull out the border to see the content. But that's ok with me, I don't use Opera anyway, since it does not honor "no-store" cache-control header (at least the way MSIE and Mozilla handle it).

    Michael, thanks for the suggestion. I'll make sure that we get that information into the next drop of the ADF Faces demo readme file.

    About your experience regarding the dialog framework and firefox I have not been able to reproduce, sorry.

    Support for Safari and Opera is something we are working on.

    Jonas Jacobi
  9. Firefox and Opera[ Go to top ]

    About your experience regarding the dialog framework and firefox I have not been able to reproduce, sorry.
    Maybe I have too many plugins, maybe it is Adblock, maybe userContents.css. I don't know. Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0 Anyway, this is what I actually experienced.

    Sorry for being rude, it is Monday ;) But I hope you will do something with these popups, so they would not appear on back/forward.
  10. Examples in action[ Go to top ]

    I would like to see some real adf-faces examples in action, does anybody know if there is a complete listing of the toolset?

    Thanks a lot

    Johannes
  11. Examples in action[ Go to top ]

    I would like to see some real adf-faces examples in action, does anybody know if there is a complete listing of the toolset?Thanks a lotJohannes

    Hi Johnannes, We have been working extensively on our components, adding features and new components, and have not had time to build a full scale demo application. We are though working on a more extensive demo app for JavaOne, but currently the only demos available are the once in the ADF Faces bundle. You could probably ask on the JDeveloper forum (http://forums.oracle.com/forums/forum.jsp?forum=83) if any of our customers can show you a screenshot or a demo of what they have built with ADF Faces.

    What do you mean by toolset, a list of all ADF Faces components, or IDEs supporting JSF?
    Thanks
    Jonas Jacobi
  12. Download at http://www.oracle.com/technology/software/products/jdev/htdocs/adfjsf.html doesn't work.

    That's really impressive Oracle.
  13. It works.[ Go to top ]

    It works with IE, not with Fireworks.
  14. Download at http://www.oracle.com/technology/software/products/jdev/htdocs/adfjsf.html doesn't work.That's really impressive Oracle.
    Yep, it did not work for me too with Firefox. Finally was able to download with MSIE, but not from the first attempt. Keep trying ;)
  15. Licensing[ Go to top ]

    I've been using ADF for a long time now (something like 9 month).

    It's really a nice component set, it does free you of caring about client side scripting. Most impresively, it now does AJAX aka Partial Page Rendering in Oracle speech.

    As many other, I can't wait to be able to customize the look using themes...

    Like other people said the only problem right now is licensing. It looks like a license will be bundled with their AppServer and/or JDevelopper (but no information is availlable on runtime license).

    The way these component work is incredible. It is really easy to develop a rich web based UI using these. However, the actual code is a bit messy (they have a class hierarchy that is a bit too deep in my taste and for no obvious reasons)(I'm used to decompiling it to trace bugs - and I found some, which are being solved soon after they are reported, thank's to a very responsive forum presence by the ADF team).

    I would really like this component set to be Open Sourced. I know it must cost a bundle to develop a component set like that. But This would be a tremendous addition to Apache MyFaces! Oracle still lag behind IBM, BEA and Sun in Open Source projet support. Open sourcing this component set would make all the other obsolete in an instant! This would also benefit JSF a lot (and Oracle is a major backer of JSF) as it will fill the gap between the spec and something really useful.

    It would be a shame if IBM open source their own JSF component set before Oracle does!
  16. Licensing[ Go to top ]

    But why Open Source is good for Oracle?

    Marina
    http://www.servletsuite.com/jsp.htm
  17. ADF for how long[ Go to top ]

    First let me say that I'm a big Oracle guy. I love the DB, have no problem with 10gAS (use it all the time), and don't mind working in JDeveloper.

    That being said I'm going to wait a year or two before thinking about using ADF. Why, because I'm worried that it will go the way of BC4J. They pushed and pushed it and now a few years later we are on to something new. BC4J total life will have only been a few years. I know that ADF is much more then BC4J, but I'm worried it could end up with the same short life.

    Well see.
  18. RE: ADF For How Long[ Go to top ]

    That being said I'm going to wait a year or two before thinking about using ADF. Why, because I'm worried that it will go the way of BC4J. They pushed and pushed it and now a few years later we are on to something new. BC4J total life will have only been a few years.

    Matt,

    I think you missed something BC4J is alive and kicking as part of ADF - it just went through a name change and it is now called ADF Business Components - but it is actually just a new version of BC4J.

    The point of ADF is that it is a framework that is built in such a way that you can plug in different technologies at the different layers.
    So for Business Services layer you can use EJBs, Web Services, TopLink or ADF BC (p.k.a BC4J).
    For the view layer you can use JSP, Swing and soon JSF.

    I don't think you need to worry about ADF going away - it is going to be used as the development platform for Fusion - the next generation of Oracle+Peoplesoft apps.
  19. adf ea[ Go to top ]

    A quick inspection gave me the impression that adf databinding is not yet available in this ea release. Is that correct?

    Jonas' weblog seems to indicate that custom look and feels are available but not yet documented. That's an ADF Faces part that I'm especially interested in since I do not expect to encounter a lot of projects where it is possible to force the standard BLAF look and feel on the client. It's exactly the GUI look and feel where customisations tailored for the client give the client a strong sense of being in the driver seat. So; is that available now?
  20. adf ea[ Go to top ]

    A quick inspection gave me the impression that adf databinding is not yet available in this ea release. Is that correct?Jonas' weblog seems to indicate that custom look and feels are available but not yet documented. That's an ADF Faces part that I'm especially interested in since I do not expect to encounter a lot of projects where it is possible to force the standard BLAF look and feel on the client. It's exactly the GUI look and feel where customisations tailored for the client give the client a strong sense of being in the driver seat. So; is that available now?

    First I would like to apologize for the momentary downtime on our download site. It is now up and running - just verified it with Firefox :) Most of the look and feel code has been checked in for EA16, but has yet to be documented and tested.

    The databinding layer (JSR 227) is not available in the JDeveloper 10.1.3 Preview, but will be there by production.

    Jonas Jacobi
    ADF Faces team
  21. Since a few people on this thread said that they have been using ADF, I wonder in which way they use it: Visually building the GUI from an IDE or rather purely programmatically? Which IDE? I think the way in which a JSF component is plugged into an IDE is not standardised but IDE-dependent, or is it not?

    I'm bascially interested in the practical experience of developing a complex HTML-GUI (although ADF supports other client types) with ADF versus the non-JSF way (which is firstly designing the HTML pages with something like Dreamweaver and then turning them into JSPs or using them for Tapestry components).

      thanks a lot,
      gerald
  22. Since a few people on this thread said that they have been using ADF, I wonder in which way they use it: Visually building the GUI from an IDE or rather purely programmatically? Which IDE? I think the way in which a JSF component is plugged into an IDE is not standardised but IDE-dependent, or is it not?I'm bascially interested in the practical experience of developing a complex HTML-GUI (although ADF supports other client types) with ADF versus the non-JSF way (which is firstly designing the HTML pages with something like Dreamweaver and then turning them into JSPs or using them for Tapestry components).&nbsp;&nbsp;thanks a lot,&nbsp;&nbsp;gerald

    I cannot answer for all users of ADF Faces, but in my case I have built ADF Faces applications visually in JDeveloper, of course ;), but there is nothing specific about ADF Faces that they only work in one IDE, they do work in other IDEs. How well is a matter of what level of JSF support that tool have for visually building applications, not the component itself.

    I think your second question about the difference in the way a component is "plugged" into an IDE is much more important. Currently, you are right, there is no standard for packaging components although most tools vendors are supporting regular .jar files, except Sun Studio Creator, but hopefully this will change. We have been working with Sun to solve this issues (We rasied this issue a year ago and wrote a proposal that is hosted on JSFCentral - http://www.jsfcentral.com/articles/oracle_metadata_proposal.html).

    I can only talk for JDevleoper and JSF, and in JDeveloper you should able to import a .jar file with your components and use them visually (unless they are depending on plug-ins). Currently I'm using a mix of MyFaces and ADF Faces components for an internal project. Works great!

    I can understand where you are coming from with your last question, but comparing HTML with JSF is not a fair comparision since you are comparing a component framework with a markup language. The idea behind JSF is to abstract application developers (or business developers) from the grunt work of HTML and client side scripting focusing on the flow and business use of the application, and leave client side stuff to the component provider. Then you can have Java developer do all the application logic and wire it up. That's how we do it internally within Oracle - one developer designs the flow and screens and one developer providing the underlying model and logic.

    Jonas
    ADF Faces
    http://www.orablogs.com/jjacobi
  23. One thing to be careful in distiguishing here is that "Oracle ADF" is an entire framework for building J2EE applications and it has been available for a while. It's current version actually uses Struts as the controller and a combination of JSTL and Struts tags for building the View.

    The IDE that provides visual databinding with the ADF framework is JDeveloper 10.1.2. Basically in JDeveloper you can visually diagram your overall page flow, which in turn generates the pages, actions etc.. and then you can databind the pages visually as well. Currently what gets generated when you databind today with JDeveloper 10.1.2 is a collection of JSTL tags with expressions and Struts tags to build form elements etc.

    As we look to the next version of JDeveloper, version 10.1.3, Oracle is now providing a set of new JSF UI Components called "ADF Faces". Technically speaking although they share the same "ADF" name that is used for the ADF framework that was released with 10.1.2, this doesn't mean that they can only be used with the entire ADF framework. Instead "ADF Faces" just a standard JSF UI Component library which can be plugged into any J2EE application/server regardless of middle-tier technology.

    When JDeveloper 10.1.3 goes production, it will offer visual databinding with both ADF Faces components as well as the JSF RI base components.

    So from a practical point of view, the Web developer can first visually design the JSPs in any visual designer (DreamWeaver or JDev's visual designer) and then visually add and bind these components.. The latter step would be done in JDeveloper.. or any other IDE that can visually edit JSF UI components.

    Hope this helps...
    -Chris
    (Oracle)
  24. To the Oracle boys,

      Big kudos to ADF/JSF.

      If these questions have been answered, I apoligize for requesting yet another response.

     - At what point will Oracle unleash ADF to those of us who don't live on Planet Oracle? (e.g., licensing and cost for an Eclipse/Tomcat config.)

     - What are the plans for supporting skins ?

     - Does it make sense to show dialogs in DIV/IFRAMEs instead of OS windows?

    William Byrne
    Codics Corp.