We figured out how to do it.
First, you have to install your Cold Fusion developer's
edition as the multi-server option. This causes it to run under
jRun and means your source code has to go under the server root.
The default is
jrun4\servers\cfusion\cfusion-ear\cfusion-war\
There is no change to the .ear file creation process.
However, when you deploy that .ear to Oracle AS 10g you now end up
with 10 pages of loaded servlets and your application actually runs
from the context root just like a real java application.
Notes:
java is really case sensitive and not forgiving like cold
fusion. Keep your file names in lower case or something that runs
under a 'regular' cold fusion server will not run on Oracle.
If you have an index.cfm module in your root that just runs
when you hit the application, you will need to remember to include
the entire file name when you move your application to Oracle. The
java application server does not know from .cfm files so you will
have to tell it where to go.
We found that we could create one good .ear file for a given
application per system reboot. After that the .ear files were
incomplete and would not deploy. Sometimes just bouncing the cold
fusion application server on jrun cured this but not always.
In our test environment, the oracle application server did
not know how to process the .xls or .doc mime types. You can tell
it what to do in the web.xml but there are many web.xml files in
the oracle server directories. We found that if you added the
<mime-mapping> section to the web.xml file located on the
jrun server under
jrun4\servers\cfusion\cfusion-ear\cfusion-war\WEB-INF , it
will get passed to the web.xml file in your .ear files.
We heard from our Cold Fusion reseller that the .ear from the
developer's edition was not a 'real' .ear. We found that this was
not the case for us.
Remember if you are going to deploy to a customer or to
production, you have to enter a valid enterpirse server license key
when you create the .ear.
Also these .ear's are really big, they contain the entire
cold fusion application server as well as your application.