Search

Custom Search

Thursday 30 July 2015

Enabling SSL in oracle EBS 12.0.6

The steps outlined below will help you to add SSL encryption to your Oracle EBS application.
The following uses a self signed certificate but if you would like to create a local certificate authority(CA) for signing such certificates  please view the tutorial here...


 Basic Steps
  •     Create Wallet with Self-Signed certificate
  •     Copy Wallet with Self-Signed certificate to OPMN certificate directory
  •     Modify Xml attributes
  •     Run Adauto config
  •     Configure database (Copy Wallet)
  •     Restart Server
  •     End

Middle Tier Setup

Step 1)  Generate Wallet and Self-Signed Certificate

 
Source your environment 
 
  •  Log on to the application (middle) tier, as the OS user who owns the application tier files.
  •  Source your /.env file to set your APPL_TOP variables.
  • Navigate to the $INST_TOP/ora/10.1.3 and source the .env file to set your 10.1.3 ORACLE_HOME variables. When working with wallets and certificates, you must use the 10.1.3 executables.

Create a Wallet
 
  • Verify the location of the Web SSL directory: grep s_web_ssl_directory $CONTEXT_FILE
  • Navigate to this directory, which will have Apache and opmn subdirectories
  • Change to the Apache subdirectory
  • Backup any existing wallets (demo certificates are included in Release 12)

Create your new wallet:

orapki wallet create -wallet . -auto_login -pwd

"-wallet ." (note the ".") tells orapki that you want to create the wallet in the current directory. You can also specify the full path to any directory where you wish to create a wallet.

" -auto_login" tells orapki that you want to create cwallet.sso which is an obfuscated copy of ewallet.p12. With auto login enabled, processes submitted by the OS user who created the wallet will not need to supply the password to access the wallet.


You should now see two wallet files in your directory: cwallet.sso and ewallet.p12.

Add your self-signed certificate to the wallet.

Enter the following command all on one line, substituting the appropriate parameters for your instance:

orapki wallet add -wallet . -dn "CN=EBSSERVER.COM,OU=IT,O=COMPANY_NAME,L=CITY,ST=STATE,C=US" -keysize 1024 -self_signed -validity 9650 -pwd *********

When viewed in the wallet manager the certificate must be in [Ready] state

Check permission on certificates to make sure everyone has access to them (oracle install user).


Step 2) - Modify the OPMN wallet.

The E-Business Suite Rapid Install process creates a default "demo" opmn wallet in the $INST_TOP/certs/opmn directory that can be used in test instances for basic SSL testing. Now that the Apache wallet has been created you will need to to use these same certificates for opmn.   Use the following steps to backup and copy the wallets:

  • Navigate to the $INST_TOP/certs/opmn directory.
  • Create a new directory named BAK
  • Move the ewallet.p12 and cwallet.sso files to the BAK directory just created.
  • Copy the ewallet.p12 and cwallet.sso files from the $INST_TOP/certs/Apache directory to the $INST_TOP/certs/opmn directory.
  • Do the same for the apache directory


Step 3) Appstier Setup
 
Edit the context xml file in $APPL_TOP/admin, change the SSL related variables to SSL values

SSL Related Variables in the Context File

Variable
Non-SSL Value
SSL Value
s_url_protocol
http
https
s_local_url_protocol
http
https
s_webentryurlprotocol
http
https
s_active_webport
same as s_webport
same as s_webssl_port
s_webssl_port
not applicable
default is 4443
s_https_listen_parameter
not applicable
same as s_webssl_port
s_help_web_agent
url constructed with http protocol and s_webport for both non-SSL and SSL


s_login_page
url constructed with http protocol and s_webport
url constructed with https protocol and s_webssl_port




s_external_url
url constructed with http protocol and s_webport
url constructed with https protocol and s_webssl_port


Execute autoconfig

Bounce the mid-tier services

Step 4) DB Tier Setup

Once you run autoconfig on Apps Tier, you need to do wallet setup on DB tier as well. Since R12 is autoconfig enabled, there will be a directory called appsutil in ORACLE_HOME on database side. Follow below steps to carry out the setup on database side.
  • Login to DB tier as oracle user
  • Change dir to $ORACLE_HOME/appsutil
  • Create a new dir with name “wallet”
  • Copy wallet and certificate files from steps above to this directory

If Not Working
  • Recheck XML parameters
  • Verify permissions on wallet files


Wednesday 15 July 2015

How to Generate a Specific Form through AD utility (adadmin)


1. Start the adadmin Utility

From a command line session, as the applmgr user, start the adadmin utility.
bash-3.00$ adadmin 


Please note that if your system is configured using more than one tier and more than one APPL_TOP (in contrast to the shared APPL_TOP), you should run this utility from each forms tier.

2. Step Through the Initial adadmin Questions


Your default directory is '/oracle/prod/apps/apps_st/appl'.

Is this the correct APPL_TOP [Yes] ?

If the above is true, then hit the [Enter] key.
AD Administration records your AD Administration session in a text file
you specify.  Enter your AD Administration log file name or press [Return]
to accept the default file name shown in brackets.

Filename [adadmin.log] : POXBWVRP.log

Here you can record your adadmin session in a specific log file like above.

************* Start of AD Administration session *************
AD Administration version: 12.0.0
AD Administration started at: Tue May 07 2013 21:01:17
APPL_TOP is set to /oracle/prod/apps/apps_st/appl
You can be notified by email if a failure occurs.
Do you wish to activate this feature [No] ?

This option only works in UNIX and the purpose of this question is to notify the AD administrator by mail if any failure occurred while adadmin was running in unattended mode.

Please enter the batchsize [1000] :

This option asks for a specific batch size, to reserve memory when adadmin validates package and procedure information. This option only is meaningful when running database administrative related tasks. For the purpose of generating a form, you can leave the default value.

You are about to use or modify Oracle Applications product tables
in your ORACLE database 'prod'
using ORACLE executables in '/oracle/prod/apps/tech_st/10.1.2'.
Is this the correct database [Yes] ?

If correct, hit the [Enter] key. Otherwise, exit this utility by typing "abort" plus the [b] key and verify if your environment has been sourced correctly.

AD Administration needs the password for your 'SYSTEM' ORACLE schema
in order to determine your installation configuration.
Enter the password for your 'SYSTEM' ORACLE schema:

Here you must enter your SYSTEM database user password.

The ORACLE username specified below for Application Object Library
uniquely identifies your existing product group: APPLSYS
Enter the ORACLE password of Application Object Library [APPS] :

Here you must enter your SYSTEM database user password.
After finally reaching this point, the utility will try to connect to your database and get information regarding your system.

3. The next step which requires user interaction is the main menu:


            AD Administration Main Menu
   --------------------------------------------------
   1.    Generate Applications Files menu
   2.    Maintain Applications Files menu
   3.    Compile/Reload Applications Database Entities menu
   4.    Maintain Applications Database Entities menu
   5.    Change Maintenance Mode
   6.    Exit AD Administration

Enter your choice [6] : 1

         Generate Applications Files
   ----------------------------------------
   1.    Generate message files
   2.    Generate form files
   3.    Generate report files
   4.    Generate product JAR files
   5.    Return to Main Menu

Enter your choice [5] : 2

AD utilities can support a maximum of 999 workers. Your
current database configuration supports a maximum of 276 workers.
Oracle recommends that you use between 64 and 128 workers.
Enter the number of workers [64] : 8


In order to determine the optimal number of workers for your system, you should consider the following general rule:
Total of available workers for your system = (Number of processors) x 3

Your current character set is "UTF8".
Do you want to generate Oracle Forms objects
using this character set [Yes] ?


If this is your correct character set, hit [Enter].  Otherwise, please verify your environment.

Do you want to regenerate Oracle Forms PL/SQL library files [Yes] ?

In this case, we will generate PL/SQL library files, so you might reply 'y' to the above question.

Do you want to regenerate Oracle Forms menu files [Yes] ?

Same as above; reply 'y' to this question.

Do you want to regenerate Oracle Forms executable files [Yes] ?

Here, hit [Enter] to accept the default 'Yes'

Enter list of products ('all' for all products) [all] : PO

Now, we need to specify the Application short name. (po for Purchasing Order, gl, for General Ledger, ap for Payables, and so on).  In our example we will be using module fnd (Application Object Library).
In 11i, the entry must be typed using lowercase characters.

Generate specific forms objects for each selected product [No] ? Yes


Answer 'y' to this question, since it will regenerate all forms for the module selected previously if 'No' is answered here.

The current set of installed languages is: US
Please select languages for generating Oracle Forms files.
You may select all of the above languages, or just a subset.
Enter list of languages ('all' for all of the above) [all] :


In this case, reply 'all', since this will regenerate the form for all existing languages.

You selected the following languages: US

Is this the correct set of languages [Yes] ?
Reading product form information...
Selecting Oracle Forms PL/SQL library files and menu files to generate...
Selecting library and menu files for Purchasing...
List of libraries and menus in Purchasing :

   POASTDCM.pll   POXAPAPC.pll   POXAPINT.pll   POXBWVRP.pll   POXCOMSG.pll
    POXCORE.pll   POXCOSEU.pll   POXCPDOC.pll   POXDOCEC.pll   POXDOCON.pll
   POXDOPRE.pll   POXGMLCR.pll   POXGMLCT.pll   POXGMLPO.pll   POXGMLRQ.pll
   POXOPROC.pll   POXPIPLL.pll   POXPIPOH.pll   POXPIPOL.pll   POXPIPOS.pll
   POXPIRFV.pll   POXPIRQH.pll   POXPIRQL.pll    POXPOAH.pll   POXPOCTR.pll
   POXPODIS.pll   POXPODMC.pll   POXPOEAC.pll   POXPOEGA.pll   POXPOEPO.pll
   POXPOPOL.pll   POXPOPOS.pll   POXPORCV.pll   POXPOREL.pll   POXPORMC.pll
   POXPOVCT.pll   POXPOVP1.pll   POXPOVP2.pll   POXPRCDF.pll   POXPROJA.pll
   POXPROJM.pll   POXRIHDR.pll   POXRILNS.pll   POXRQDIS.pll   POXRQHDR.pll
   POXRQLNS.pll   POXRQMOD.pll   POXRQVR1.pll   POXRQVR2.pll   POXSCAPP.pll
   POXSCRFV.pll   POXSCSAQ.pll   POXSCSI2.pll   POXSCSIL.pll   POXSTIFT.pll
   RCVCOFND.pll   RCVCOTRX.pll   RCVCOUOM.pll   RCVGMLCR.pll   RCVGMLTX.pll
   RCVMRFND.pll   RCVMRMAT.pll   RCVRCCON.pll   RCVRCCUR.pll   RCVRCERH.pll
   RCVRCERL.pll   RCVRCMUR.pll   RCVRCVRC.pll   RCVSHESH.pll   RCVSTDRO.pll
   RCVTXECO.pll   RCVTXERE.pll   RCVTXERT.pll   RCVTXVTX.pll

Enter libraries and menus to generate, or enter 'all' [all] : POXBWVRP.pll
Selecting product forms to generate...
Selecting forms for Purchasing...

List of forms in Purchasing :
   POASTDCM.fmx   POASTDSR.fmx   POXBWVRP.fmx   POXCPDOC.fmx   POXDOAPP.fmx
   POXDOCEC.fmx   POXDOCON.fmx   POXDOFDO.fmx   POXDOPRE.fmx   POXDOREP.fmx
   POXGAORG.fmx   POXOPROC.fmx   POXPCATN.fmx    POXPOAH.fmx   POXPODMC.fmx
   POXPOEAC.fmx   POXPOEPO.fmx   POXPOERL.fmx   POXPORMC.fmx   POXPOVCT.fmx
   POXPOVPO.fmx   POXPRCDF.fmx   POXQUEMQ.fmx   POXRQARQ.fmx   POXRQERQ.fmx
   POXRQMOD.fmx   POXRQTMP.fmx   POXRQVRQ.fmx   POXSCAPP.fmx   POXSCASL.fmx
   POXSCERQ.fmx   POXSCSAQ.fmx   POXSCSIC.fmx   POXSTASL.fmx   POXSTDCG.fmx
   POXSTDCS.fmx   POXSTDLC.fmx   POXSTDPC.fmx   POXSTIFT.fmx   POXSTITS.fmx
   POXSTPRS.fmx   POXSTRLM.fmx   POXSVASL.fmx   POXTAXCT.fmx   POXTAXDT.fmx
   RCVCOFND.fmx   RCVCOSTA.fmx   RCVRCERC.fmx   RCVRCMUR.fmx   RCVRCVRC.fmx
   RCVSHESH.fmx   RCVSTAND.fmx   RCVSTDRO.fmx   RCVTXECO.fmx   RCVTXERE.fmx
   RCVTXERT.fmx   RCVTXVTX.fmx

Enter forms to generate, or enter 'all' [all] : POXBWVRP.fmx


Enter ‘POXBWVRP.fmx’ at the prompt. Once you do so, adadmin will invoke the appropriate forms compiler and will regenerate the forms.

Generating Oracle Forms objects...

If any error is found, review the adadmin log file and the adworker log file(s).  The adworker log files are also located under $APPL_TOP/admin//log directory.  The file name is adworkxx.log where xx is the number of the worker that had failed. If submitting the problem to Oracle Support as a service request, please upload the adadmin log and the relevant adworker log.

Monday 13 July 2015

Starting/Stopping Oracle Enterprise Manager Cloud Control

export ORACLE_HOME=/u01/app/oracle/oms/oracle_common

/u01/app/oracle/oms/oms/bin> ./emctl stop oms -all

/oms11g/bin> ./emctl start oms

Tuesday 7 July 2015

Start Oracle Database Automatically (Linux)


The Oracle 11gR2 documentation states the use of the dbstart and dbshut scripts is deprecated. The preferred replacement is Oracle Restart.

Both dbstart and dbshut are still present in Oracle 11gR2 and Oracle 12cR1, so you can continue to use them for now (I still use them). In order to use Oracle Restart you must install Grid Infrastructure (GI), which you will already have if you are using RAC or ASM for a standalone instance. In these cases, Oracle Restart will already be present and running. For single instance databases that don't use ASM, I think it is unreasonable to expect people to install GI, so the following describes a method for those cases, while avoiding dbstart and dbshut.

Create a file called "/etc/init.d/dbora" as the root user, containing the following.

#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database software.

ORA_OWNER=oracle

case "$1" in
    'start')
        # Start the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        # Remove "&" if you don't want startup as a background process.
        su $ORA_OWNER -c "/home/oracle/scripts/startup.sh >> /home/oracle/scripts/startup_shutdown.log 2>&1" &

        touch /var/lock/subsys/dbora
        ;;
    'stop')
        # Stop the Oracle databases:
        # The following command assumes that the oracle login
        # will not prompt the user for any values
        su $ORA_OWNER -c "/home/oracle/scripts/shutdown.sh >> /home/oracle/scripts/startup_shutdown.log 2>&1"
        rm -f /var/lock/subsys/dbora
        ;;
esac


Use the chmod command to set the privileges to 750.

chmod 750 /etc/init.d/dbora

Associate the "dbora" service with the appropriate run levels and set it to auto-start using the following command.

chkconfig --add dbora

Next, we must create the "startup.sh" and "shutdown.sh" scripts in the "/home/oracle/scripts". First create the directory.

# mkdir -p /home/oracle/scripts
# chown oracle.oinstall /home/oracle/scripts

The "/home/oracle/scripts/startup.sh" script should contain the following commands.

#!/bin/bash

export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOSTNAME=hostname
export ORACLE_UNQNAME=databasename
export ORACLE_SID=databasesid
export PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

# Start Listener
lsnrctl start

# Start Database
sqlplus / as sysdba << EOF

STARTUP;
EXIT;
EOF


The "/home/oracle/scripts/shutdown.sh" script is similar.

#!/bin/bash

export TMP=/tmp
export TMPDIR=$TMP

export ORACLE_BASE=/u01/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOSTNAME=hostname
export ORACLE_UNQNAME=databasename
export ORACLE_SID=databasesid


export PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

# Stop Database
sqlplus / as sysdba << EOF
SHUTDOWN IMMEDIATE;
EXIT;
EOF

# Stop Listener
lsnrctl stop


You could move the environment settings into the "dbora" file or into a separate file that is sourced in the startup and shutdown script. I kept it local to the script so you could see the type of things that need to be set in case you have to write a script to deal with multiple installations, instances and listeners.

Make sure the permissions and ownership of the files is correct.

# chmod u+x /home/oracle/scripts/startup.sh /home/oracle/scripts/shutdown.sh
# chown oracle.oinstall /home/oracle/scripts/startup.sh /home/oracle/scripts/shutdown.sh

The listener and database will now start and stop automatically with the machine. You can test them using the following command as the "root" user.

# service dbora start
# service dbora stop

If you are running multiple installations, listeners or databases, you will need to amend the startup/shutdown scripts accordingly.

Hope this helps.
Thanks to https://oracle-base.com/articles/linux/automating-database-startup-and-shutdown-on-linux

Saturday 4 July 2015

How To Change Oracle E-Business Suite EBS Color Options

In E-Business Suite, Oracle Forms screens may be invoked by actions taken on the E-Business Suite Professional User Interface or other self-service screens. In order to run these screens, a URL is constructed using information in profiles ‘Java Look and Feel’ and ‘Java Color Scheme’.
  • To specify the look and feel, set profile ‘Java Look and Feel’ to either generic or oracle at either the user or the responsibility level.
  • If the oracle look and feel is used, the profile ‘Java Color Scheme’ can be specified as follows: teal, titanium, red, khaki, blue, olive, or purple.
  • The ‘Java Color Scheme’ profile has no effect if ‘Java Look and Feel’ is set to generic.
E-Business Suite by default renders:
  • required fields in yellow
  • queryable fields in a different colour while in enter-query mode
  • fields that cannot be entered (read-only fields) in gray
To turn off these features when running Oracle Forms through the E-Business Suite Professional User Interface, set profile ‘FND: Indicator Colors’ to No at either the responsibility or the user level.

Wednesday 1 July 2015

Starting Oracle Database Automatically (Windows)


How to start the Oracle database automatically when the server is restarted?

Using Oracle Administration Assistant for Windows

To automatically start Oracle Database services from Oracle Administration Assistant for Windows:
  1. From the Start menu, select All Programs, then select Oracle - HOMENAME, then select Configuration and Migration Tools, and then select Administration Assistant for Windows.
  2. Right-click the SID.
    The variable SID is a specific instance name, such as orcl.
  3. Select Startup/Shutdown Options.
  4. Select the Oracle NT Service tab.
  5. Select Automatic in Oracle NT Service Startup Type.
  6. Click Apply.
  7. Click OK.