Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Corrected links that should have been relative instead of absolute.

Download, install and configure the Oracle OC4J 10.1.3.5 stand alone server

Info

Help is available by sending an email to csf-support@mit.edu
Have any suggestion on how improve this wiki?  Please give us your feedback at csf-support@mit.edu

Panel
Wiki Markup
Quick Links to:
{toc:minLevel=4}
Panel
Wiki Markup

h4. *Download the OC4J stand alone server*

# Go to the [*Oracle Internet Application Server*|http://www.oracle.com/technetwork/middleware/ias/overview/index.html] site.  Click on the [*Downloads*|http://www.oracle.com/technetwork/middleware/ias/downloads/index.html] tab and all available [*Application Server 10g Release 3 (10.1.3.x) Downloads*|http://www.oracle.com/technetwork/middleware/ias/downloads/index.html] will be displayed.
\\
\\
# Scroll down until you reach the *Oracle Containers for J2EE* section and click on [*Pure Java*|http://www.oracle.com/technetwork/middleware/ias/downloads/utilsoft-090603.html].  The [*Oracle Application Server 10g Software Downloads*|http://www.oracle.com/technetwork/middleware/ias/downloads/utilsoft-090603.html] will be displayed.
\\
\\
# Accept the License Agreement, then click on the *Oracle Containers for J2EE 10g (OC4J)* link.  The download of the *oc4j_extended_101350.zip* file will start.  Save this zip file on your workstation.
\\
*NOTE:* Before the download begins, Oracle will require you to either log in using an existing Oracle account or you will have to create a new Oracle account.

h4. *Install the OC4J stand alone server*
{indent}
In your $\{user.home} directory, create the directories oc4j/10.1.3.5.0 and unzip the *oc4j_extended_101350.zip* file to the $\{user.home}/oc4j/10.3.5.0 directory.  Create a system environmental variable *ORACLE_HOME* and set it's value to $\{user.home}/oc4j/10.3.5.0.
\\
\\
For example: if *$\{user.home}=/users/rstone*, then *ORACLE_HOME=/user/rstone/oc4j/10.1.3.5.0*
\\
\\
You can actually unzip to any directory you desire.  The only requirement is that all directory names cannot contain any white space.
\\
\\
*For MAC users*:  You can now [download a nice plugin | Install the Oracle OC4J 10.1.3.5 standalone server^RCEnvironment-1.4.X.dmg] that helps you manage your system environmental variables.  The plugin, *RCEnvironment*, is a preference pane for MacOS X 10.1 or higher that allows editing of your ~/.MacOSX/environment.plist file.
{indent}

h4. *Configure the OC4J stand alone server*
{indent}
{info}
The above change is made to prevent *PermGEN* errors for occurring.  If you get *PermGen Out of Memory* errors when either deploying your application or when starting the oracle server, increase the 512M values to 1024M.
{info}
# Edit the file $\{ORACLE_HOME}/j2ee/home/config/system-application.xml and change:
{code}
<import-shared-library name="oracle.toplink">
{code}to:{code}
<!--import-shared-library name="oracle.toplink"-->
{code}
If you want to disable the *Oracle Enterprise Manager* then change
{code}
<import-shared-library name="oracle.xml"/>
{code}to:{code}
<!--import-shared-library name="oracle.xml"/ -->
{code}
When you are satisfied that everything is correct, *SAVE* your changes.
# We need to add a datasource so that the applications can pull data from the database.&nbsp;&nbsp;Edit $\{ORACLE_HOME/j2ee/home/config/data-sources.xml to add a datasource.&nbsp; Here's an example of adding a MITSIS datasource:
\\
{code}
<data-source
    class="com.evermind.sql.DriverManagerDataSource"
    name="OracleDS2"
    location="jdbc/MitsisDS"
    xa-location="jdbc/xa/StargateXADS-unused"
    ejb-location="jdbc/OracleDS-unused"
    connection-driver="oracle.jdbc.driver.OracleDriver"
    username=""
    password=""
    url="jdbc:oracle:thin:@//earth-vault-2.mit.edu:1523/sundev11"
    inactivity-timeout="30"
/>
{code}
where obviously *you MUST add your username and password.*&nbsp;&nbsp;If you do not have a username and password, request a them from your team leader.
\\
When you are satisfied that everything is correct, *SAVE* your changes.
\\
# *FOR WINDOWS ONLY* \- setting the administrator's password
\\
\\
Open a CMD window and cd to the $\{ORACLE_HOME}/bin directory.  Type the following command:
\\
{code}
oc4j -start
{code}
You will be asked to enter and confirm a password.&nbsp;&nbsp;Pick a password that is easy for you to remember.&nbsp;&nbsp;You will need to use this password when configuring Maven.
\\
\\
{anchor:parser configuration}
# In order to use Spring 3.X with OC4J 10.1.3, you'll need to swap out the default XML parser in OC4J with something more modern.&nbsp;&nbsp;xercesImpl.jar and xml-apis.jar work fine.&nbsp;&nbsp;To swap the parser out, you need to create a new shared library in the OC4J enterprise manager and then edit the system-application.xml file to use your new shared library instead of the Oracle XML parser.
\\
\\
Start and stop the OC4J server.
\\
\\
Open *$\{ORACLE_HOME}/j2ee/home/application-deployments/default/orion-application.xml* with a text editor.&nbsp;&nbsp;If the file or any sub-directory does not exist, create them as needed.
\\
\\
If you had to create the file a new, these are the contents of the file:
{code}
<?xml version='1.0' encoding='utf-8'?>
<orion-application
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-application-10_0.xsd"
    schema-major-version="10"
    schema-minor-version="0"
    component-classification="internal">
    <imported-shared-libraries>
        <remove-inherited name="oracle.xml"/>
    </imported-shared-libraries>
</orion-application>
{code}
If you had an existing file, add this block to it:
{code}
<imported-shared-libraries>
    <remove-inherited name="oracle.xml"/>
</imported-shared-libraries>
{code}
When you are satisfied that everything is correct, *SAVE* your changes.
# *FOR ALL OPERATING SYSTEMS* \- how to change the administrator password.
\\
\\
Open *$\{ORACLE_HOME}/j2ee/home/config/system-jazn-data.xml* with a text editor.
\\
\\
Find the <user> tag block for oc4jadmin.&nbsp;&nbsp;Change the oc4jadmin's <credentials> property to (substituting your password for myNewPassowd):
{code}
<credentials>!myNewPassword</credentials>
{code}
Be sure to preface the password with an \! to inidcate that this is a plain text value.
\\
\\
When completed, the oc4jadmin <user> should look something like:
{code}
<user>
    <name>oc4jadmin</name>
    <display-name>OC4J Administrator</display-name>
    <guid>E33D5A508AA511DF8F573778FB23EDF8</guid>
    <description>OC4J Administrator</description>
    <credentials>!myNewPassword</credentials>
</user>
{code}
Save the changes and restart the OC4J server.




Getting Better Debugging Information From OC4J

Panel
Wiki Markup
By default, some run time errors that you'll see when testing web apps in OC4J are not too helpful.&nbsp;&nbsp;You can coax OC4J into giving you more information about certain errors by making the following changes in global-web-application.xml:
\\
\\
Open $\{ORACLE_HOME}/j2ee/home/config/global-web-application.xml with a text editor.
\\
# Turn on "development" mode - in the <orion-web-app> section at the top of the file, change the "development" setting to true:
\\
{code}
<orion-web-app
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-web-10_0.xsd"
  jsp-cache-directory="./persistence"
  servlet-webdir="/servlet"
  development="true"
  jsp-timeout="0"
  jsp-cache-tlds="standard"
  schema-major-version="10"
  schema-minor-version="0">
{code}
# Turn on debug mode. In the "jsp" servlet section, set a parameter debug_mode to true. The section should look like this:
{code}
<servlet>
      <servlet-name>jsp</servlet-name>
      <servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class>
      <init-param>
        <param-name>debug_mode</param-name>
        <param-value>true</param-value>
      </init-param>
      <load-on-startup>0</load-on-startup>
</servlet>
{code}
With these settings, you should get more meaningful messages in your browser when you run into certain errors (JSP syntax errors for example).
{indent}