Dive into Oracle ADF

Send me a mail
 Dive into Oracle ADF   Click to see the XML version of this web page.   (Updated: 2/3/2008; 9:14:24 PM.)
Tips and tricks from Steve Muench on Oracle ADF Framework and JDeveloper IDE

Search blog with Google:
 

Search BC4J JavaDoc:
 

September 2004
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
Aug   Oct

Get Firefox!

Thursday, September 16, 2004

I went out to dinner in downtown Oslo last night at the National Theatre Cafe with two colleagues from Oracle Norway after they closed up the Oracle stand in the exhibitor area at the JavaZone conference. I was in the mood to try some food that I wouldn't find in Italy or the US, so when I saw "Carpaccio of Reindeer" on the appetizer list, and a "Whale Steak" among the main courses, my curiosity got the better of me. Both were memorable. My high school biology teacher would have grumbled at me when I showed surprise that the whale steak looked nothing like fish, and everything like a chunk of red meat. While that entry on the menu would likely find no takers among the Greenpeace set, it did taste nice. What the hey. Once in a lifetime!


7:43:44 PM    



Here are the steps in JDeveloper 10g (v9.0.5.2) to building a web service implemented by an ADF ApplicationModule component:

  1. Pick File | New... | Business Tier | Business Components | Application Module from the gallery to create a new application module.
  2. Right-mouse on the new application module and select "Go to Application Module Class" to jump to the ApplicationModuleImpl.java class for your new service component.
  3. Write one or more custom methods in that class whose arguments and return type are among the support types for web services (primitive types, beans, and arrays of those are ones I know will work)
  4. Edit your applicationmodule component (with right-mouse Edit) and visit the "Client Interface" panel to select which custom methods you'd like to appear in the external web service.
  5. Then visit the "Remote" panel and check the "Remote Application Module" checkbox and shuttle "J2EE Web Service" into the Selected list, then click (OK).

That's it. This will create all of the bits and bobs that you need, including the deployment profile which will deploy your new web service with a quick right-mouse click.

As you add more functionality to your application module, remember that since the web service is stateless, you'll need to commit or rollback the transaction inside of each custom method that you write by doing getDBTransaction().commit() -- or rollback().


7:32:51 PM    


The JavaZone conference in Oslo, Norway, is a wrap. The show drew 800 Java programmers and I was happy with the turnout of my two sessions. In getting ready for giving the session about "J2EE and Web Services: What Next?", I've gotten a chance to get more familiar with our Oracle BPEL Process Manager which provides a robust implementation of the Business Process Execution Language 1.1 (pdf). It makes it quite easy to implement multi-step business processes that involve orchestrating multiple interactions with web services.

Since it is dead-easy to build statless enterprise web services by using ADF application modules (and all the functional goodness they encapsulate), it means that orchestrating BPEL business processes that make use of ADF Business Components-based web services is now a reality by combining ADF and our BPEL Process Manager.


7:26:52 PM    


I've updated my Creating Search Pages with Both Fixed and Dynamic Criteria with a new section on  Supporting Case-Insensitive Queries by using a generally useful ADF coding technique of building a framework extension class that contains generic code, but which is used conditionally depending on the presence of a custom component property. In this case, my CustomViewObjectImpl class in the example triggers case-insensitive querying functionality if the user sets a custom view object property named CaseInsensitiveViewCriteria to the value "Yes".


6:42:03 PM    


© Copyright 2008 Steve Muench.