Last night we had the annual Oracle ACEs dinner at a very nice San Francisco restaurant. The food and wine were excellent, but the company even more inspiring. I have talked with so many people I only knew the names of, as well as many people I had met before, however briefly. After doing some light conversation with people like Mark Rittman, Kent Graziano, Steven Feuerstein, Eddie Awad, Scott Spadafore (who told me a lot about Application Express) and Tom Kyte, I found myself seated with mostly Oracle employed ACEs, representing the fine fleur of Oracle Fusion Middleware: Clemens Utschig for Oracle BPEL PM, Doug Clark for Toplink, Debu Panda for EJB 3.0, Steve Muench for ADF (BC), Frank Nimphius for ADF (Faces), Duncan Mills for Oracle Forms (just kidding, for ADF of course), Grant Ronald (he is for Oracle Forms). It gave me a great opportunity to get answers and insights in some of the things that had puzzled and intrigued me for some time. And of course they were kind enough to let me pick their brains!
We talked about support for Stored Procedures in the EJB 3.0 JPA – that is not there. Doug explained that Toplink – that is not Toplink Essentials but the full product – will have support for accessing Stored Procedures in a way that resembles the whole JPA approach as much as possible. Stored procedures simply are not part of the official spec so there is not standard way of supporting them. The challenge is to support them anyway, in way that does not compromise JPA standards and is also in line with it. He suggested using a notation very much like annotations for named queries. We also discussed workarounds with Toplink Essentials, such as calling a functions in a native query (for Stored Function access) and performing DML against a View with Instead Of triggers that result in calls to stored procedures (see a previous article on this http://technology.amis.nl/blog/?p=1017 ). He agreed that those were viable ways to go with just the vanilla JPA.
We also discussed a topic that had had occupied my mind some time ago: the use of Virtual Private Database in conjunction with Oracle Toplink, especially in view of the shared cache. Well, it turns out that Toplink does support VPD, but not with a shared cache (which is understandable). Then Steve Muench chipped in and talked about Database notifications that have been available in OCI but are soon to be part of JDBC as well. These allow applications to register an interest with the database in events that take place and get calls when they occur. The Toplink team is challenged to provide support for this mechanism, for example to have the cache synchronized with the data in the database without having to just requery the data in cache every now and again. An interesting challenge as it turns out.
I had a perfect opportunity to find out what these gentlemen thought I should at least put in the article on JDeveloper 10.1.3.1 I am currently doing for JDJ. They were pretty united in their suggestion – one that I had adopted myself – that JDeveloper really stands out compared with the competition when it comes to out-of-the-box functionality. You may be able to assemble an Eclipse based environment that has the same functionality as JDeveloper – but it would be terribly hard work, you would still not have the level of integration within the IDE as JDeveloper provides and you probably would have to pay for some of the plugins you have to use to reach the same level of functionality. We concluded that the J in JDeveloper is somewhat misleading. It tells about the origin of the product, but instead of a J we can also apply an X(ML), a D(atabase), an I(ntegration) or a W(eb).
We further discussed the Rich Client components in ADF Faces – probably not going to be part of Trinidad or at least there is no clear plan to do so. The behavior of developers on the OTN Forums, with the Oracle Forms forum a good example of developers helping each other and some other forums more like Oracle staff helping developers with almost everything. Then I got some insights in Oracle’s policies for travelling business class and inventive approaches to deal with them.
I could invoke Clemens’ help for the BPEL PM demo I am going to do later today, ask Debu about the book he has almost completed – on EJB 3.0 obviously, discuss his book on ADF with Duncan, learn about the highly, usually globally distributed nature of many of Oracle’s porduct development teams, understand a little bit about living in the bay area etc. Then there was the wine – very good red wine. And there the evening becomes a little blurred in my memory.
Some picture were posted by Eddy Awad: http://www.flickr.com/photos/awads/277051395/