Sunday, March 15, 2020

R12.2 Mobile Apps Setup - Reference docs

Image result for ebusiness suite r12 logo




Implementation & Admin guide:

Install Process for the Oracle Mobile Supply Chain Applications/MSCA/MWA on Mobile Apps for Oracle E-Business Suite Release (Doc ID 2163603.1)

Oracle Mobile Supply Chain Applications for Oracle E-Business Suite Release Notes (Doc ID 2108155.1)

https://docs.oracle.com/cd/E18727_01/doc.121/e64384.pdf  -- Admin Guide


What is MSCA ?

http://norcaloaug.com/seminar_archive/2014_training_day_pres/3_6_Jain.pdf


Thursday, March 12, 2020

EBS R12 Workflow Mailer : Problem getting the HTML content: javax.net.ssl.SSLHandshakeException


Issue:

Workflow notificaiton mailer is not sending emails to recipients and getting below exception in logs.

 Problem getting the HTML content -> oracle.apps.fnd.wf.mailer.NotificationFormatter$FormatterSAXException:
Problem obtaining the HTML content -> oracle.apps.fnd.wf.common.HTTPClientException: Unable to invoke method HTTPClient.HTTPConnection.Get caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed:sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Cause:

Due to self-signed certificate

Solution:

a. copy the  root and intermediate certificates of  EBS login url (LB URL)  to app server.

b.  Import the certificate into cacerts

1.cd $COMMON_TOP/util/jdk32/jre/lib/security
2.chmod u+w cacerts
3.keytool -import -alias ApacheRootCA -file ca.crt -v -keystore cacerts
4.keytool -import -alias ApacheInterA -file ca.crt -v -keystore cacerts
5.chmod u-w cacerts

c. Please follow the step b (2-5) in the below locations as  well.

$COMMON_TOP/util/jdk64/jre/lib/security/
<s_fmw_jdktop>/jre/lib/security

s_fmw_jdktop - grep the value from context_file

d. Import the root & inter ca in the below file.

cat ca.crt >> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt
cat intca.crt >> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt

e. Bounce the workflow services.

Workaround:
Alternatively , We can Change the "WF: Workflow Mailer Framework Web Agent" [WF_MAIL_WEB_AGENT] profile option to point to the physical Web Server host address - http://<host>.<domain>:<port> and rebuild the workflow mailer queue.

Sunday, March 1, 2020

Import private key and certificate into JKS

a. Import (or)Convert the private key and certificate to PKCS12

openssl pkcs12 -export  -inkey /u02/certficates/private.key -in /u02/certficates/server.cer -certfile /u02/certficates/interCA.cer -out testkeystore.p12

Please provide the export password and re-enter to verify .

Note: you may receive an error like "Error unable to get issuer certificate getting chain."  if the certificate is self-signed. In this case, Please concatenate the openssl cacerts with your own root certificate (ca-cert) into one file and use that as parameter for -CAfile. Example:


cat ca-cert /etc/ssl/certs/ca-certificates.crt > consol_cacerts.crt
then use consol_cacerts.crt  as the parameter to the -CAfile option in the openssl comm
and
.


b. Convert p12 to JKS

keytool -importkeystore -srckeystore testkeystore.p12 -srcstoretype pkcs12 -destkeystore mwa.jks -deststoretype JKS

Please provide the JKS password and re-enter to verify.
Supply the export password which had been set in step a.


c. View the certificates and private key entry

keytool -list -v -keystore mwa.jks

Sunday, January 5, 2020

How to prevent ssh timeout in linux?

By sending a “null packet” between the client and the server at a specified interval that is smaller than the timeout value, we can avoid SSH timeout. It doesn’t matter if the packet is sent from the client or the server, as long as there is some communication going on between the two.

Prevent SSH timeout on the server side:

Please  add the following to your SSH daemon config in /etc/ssh/sshd_config on your servers to prevent the clients to time out – so they don’t have to modify their local SSH config:

ClientAliveInterval 120
ClientAliveCountMax 720

This will make the server send the clients a “null packet” every 120 seconds and not disconnect them until the client have been inactive for 720 intervals (120 seconds * 720 = 86400 seconds = 24 hours).

Check the value through command line ...

[root@oam network-scripts]# sshd -T | grep -i client
clientaliveinterval 120
clientalivecountmax 720


Prevent SSH timeout on the client side:

on many commodity firewalls, connections are killed after as little as 300 seconds. To avoid having your SSH sessions become unresponsive after e.g. 5 minutes, do the following:

Linux Client:
If we are on Linux, you can edit your local SSH config file in ~/.ssh/ssh_config  (or) /etc/ssh/ssh_config and add the following line:

ServerAliveInterval 120
This will send a “null packet” every 120 seconds on your SSH connections to keep them alive.


Windows clients:

Putty - On Windows (PuTTY)
In your session properties, go to Connection and under Sending of null packets to keep session active, set Seconds between keepalives (0 to turn off) to e.g. 300 (5 minutes).

Mobaxterm - You can check the "Enable SSH keepalive" box under "Settings" --> "Configuration" --> "SSH" tab.

Friday, December 6, 2019

Alternative for telnet in linux

Ever needed to test firewalls but didn't have netcat, telnet or even FTP? Enter /dev/tcp which is alternate for telnet 

/dev/tcp/(hostname)/(port) is a bash builtin that bash can use to open connections to TCP and UDP ports.




Wednesday, October 24, 2018

R12 Sysadmin account got locked after N number of invalid attempts

Run this query and make sure the account got locked

SELECT DECODE (encrypted_user_password
             , 'INVALID', 'Account locked'
             , 'Account not locked')
  FROM fnd_user
WHERE user_name = '&username';


We can't unlock the account as similar to dba_users account. Please use below command to reset the password.

FNDCPASS apps/XXXXXXX 0 Y system/XXXXXX USER SYSADMIN XXXXXXXX

Tuesday, October 16, 2018

adop failed with "Patch service is not exist or running"

While applying the patch  ,getting the error "Patch service  is not exist or running".


validating system setup.
    Node registry is valid.
    Log: /u01/JAYPRE/fs1/inst/apps/JAYPRE_JJ10003/logs/appl/rgf/TXK/verifyssh.log
    Output: /u01/JAYPRE/fs1/inst/apps/JAYPRE_JJ10003/logs/appl/rgf/TXK/out.xml
    Remote execution is operational.
    [ERROR]     Patch service  is not exist or running
 
Package AD_ZD_PREP is invalid.
                
SQL> alter package apps.AD_ZD_PREP compile;

Warning: Package altered with compilation errors.

SQL> show errors package body apps.AD_ZD_PREP;
Errors for PACKAGE BODY APPS.AD_ZD_PREP:

LINE/COL ERROR
-------- -----------------------------------------------------------------
463/3    PL/SQL: SQL Statement ignored
463/19   PL/SQL: ORA-00942: table or view does not exist
467/5    PL/SQL: SQL Statement ignored
467/21   PL/SQL: ORA-00942: table or view does not exist
501/5    PL/SQL: SQL Statement ignored
501/21   PL/SQL: ORA-00942: table or view does not exist


Run adgrants.sql script
SQL> @adgrants.sql APPS

SQL>  alter package apps.AD_ZD_PREP compile;

Package altered.

Now retry adop.It should work.

How to Compile Forms , Reports & Custom.pll in R12.2

How to Compile Custom.pll   cd $AU_TOP/resource  cp CUSTOM.plx CUSTOM.plx_bkup  cp CUSTOM.pll CUSTOM.pll_bkup  frmcmp_batch module=CUSTOM.pl...