The GroundSide Blog automatically aggregates all posts from all other blogs hosted on the system.




Syndicate this blog

Web cast with Oracle Forms Support experts.

I've just posted a note on OTN promoting a webcast with Support on the 7th Oct - this is a great opportunity to understand how Support works and a chance to pitch some of your technical questions to the Support experts.

Basic Proxy definition for a deployed application on Fusion Middleware 11g

This is just one of those things that takes a while to Google for the correct answer to, so I figure, the more instances and examples the better.
The scenario is where you have a standard install of Oracle Fusion Middleware. Good old Oracle HTTP Server / Apache is on port 80 and your Java EE app is out there on a managed WebLogic server, maybe on port 7002 or some such.
The basic question is how can I make my app appear to be running on port 80. Trivial once you've done it.
I'm using a fairly out of the box FMW 11g R1 install here on Linux so you'll hopefully be able to reverse engineer the paths and translate that for your system:

  1. Navigate to product/11.1.1/as_1/instances/instance1/config/OHS/ohs1/moduleconf
  2. For the application, create a new .conf file (any .conf files in this directory will be automatically merged with the main httpd.conf on startup)
  3. So in this case I might create a file called sf311.conf
  4. Now add the following, assuming that the j2ee app is called "sf311" and your managed WebLogic server is on port 7002


<IfModule proxy_module>
  RewriteEngine on
  ProxyPass /sf311/ http://[yourhostname]:7002/sf311
  ProxyPassReverse /sf311/ http://[yourhostname]:7002/sf311
  RewriteRule ^/sf311$ /sf311/ [R]
</IfModule>

Using OJAUDIT for fun stuff

A question came up recently about how you could re-run parts of the migration that occurs when you migrate from the JDeveloper 11g 11.1.1.0 (Boxer) release to the newer 11.1.1.1.0 (Bulldog) release. Specifically this concerned the automatic creation of unique IDs for all of your ADF Faces components that the migration performs.
It turns out that you don't really need to re-run the migration facility to do this as the in-built audit rules currently have a warning rule that checks for an ID and will fix it for you if you don't have one. You see this rule in action as it puts orange squiggles under components that don't have an ID in the source view of the page editor.
Anyway, what if you want to automate this process because you skipped the migration when you first opened the project in the newer version? here are the steps:

  1. First you need to set up an audit profile that just does the things you care about. In this case just the ID detection. So off you go to Tools > Preferences in the menu.
  2. In the tree, expand Audit and select Profiles
  3. Use the Save As button to create a copy of any of the existing profiles. Call it something like AutoId
  4. Uncehck all of the existing rules and then select the ones you want to use in this command line based run of the rules. e.g. ADF Faces > Component ID Rules > Check for ID when ADF Faces is Present
  5. Save the new profile
  6. Test the profile against something that breaks the rule. For example, in this case a JSF page containing a component with no ID. Just choose Audit from the Build menu and select your custom profile (AutoId)
  7. Now you're all set. Just open a command window and navigate to the /jdeveloper/jdev/bin directory and issue the following command:


ojaudit -profile AutoId -f C:\temp\MyIDAudit\MyIDAudit.jws

The -f option here tells the audit framework to apply the default fix, which in this case is to generate a unique ID for the component. The final argument is the workspace I'm auditing. For more about the ojaudit capability just search for it in the online help or run it without any arguments in a shell.

My Sessions at Oracle World 2009

Well its good to see some of my sessions are already 50% full with pre-registrations. So, if you are planning on attending it might be worth pre-registering now. The three sessions I am doing are:

Redeveloping an Oracle Forms Application with Oracle JDeveloper and Oracle ADF on Monday 12th at 14:30. In this session I'm going to keep the Powerpoint to a minimum and take a sample Forms application and rebuild it using JDeveloper and Oracle ADF -right infront of your eyes! I'll also talk about some best practices and of course, be happy to field questions from the audience.

Modernizing Your Oracle Forms Investment: Google Maps, Web 2.0, Web Services on Monday 12th October at 16:00. I'm hoping this will be THE session for anyone with a Forms investment. I will be outlining future strategy as well as demoing some of the new features in Forms 11g and showing you how Forms can integrate with cool features like maps and charts.

From Oracle Forms to Oracle Application Development Framework: Why and How is on Wed 14th at 11:45. In this session it all going to be about the WHY and HOW. Why is ADF is the natural choice for Forms developers, in what way are the architectures similar, and why even consider ADF in the first place. So, if you know Forms and want to know why Oracle use ADF for their Java development, then this is the session for you.

Announcing new Oracle Development SIG in the UK

On the 27th of October, the UKOUG are launching a new Development SIG aimed at any developer who is developing using Oracle tools and technology. The first special interest group (SIG) will have a "modernization" theme to it and covers topics as including Apex, SOA, Forms, Designer and JDeveloper.

A full SIG agenda is published here.

As usual with these events, space is limited and given the wealth of experienced presenters and topics, it should serve as a great learning opportunity as well as the chance to exchange ideas and meet with fellow developers.

ADF Methodology at Oracle World 2009

One very interesting session I want to check out at Oracle World this year is by the ADF Enterprise Methodology Group (ADF EMG)
This is where you get anyone who REALLY uses ADF together in a room and discuss things like best practices, how to build ADF teams and ADF/code reuse.

I think that if you are looking to start building using ADF then you HAVE to make this session. Why make your own mistakes you can learn from the "mistakes" ;o) and best practices of people who have already been there an done it.

Plus its a room full of Oracle Product Managers, Oracle ACES and leading lights in the ADF/Fusion community so you can get face to face with the people you "meet" every day on the forums.

I for one, will be going!

Template Manipulation at Runtime

I've just posed a new sample up onto samplecode.oracle.com which shows how a page that consumes a template can interact with components in that template to do things like collapse splitters and so forth. Importantly this is achieved without polluting the template with knowledge of the consuming pages. The sample shows how to perform the interaction both for full page and more importantly partial page refreshes.
The sample code project includes a full JDeveloper workspace and has no external dependencies. 11g is of course required.

If you have a little sample like this why not publish it to samplecode as well? - use the JDeveloper and ADF category.