Register for Apps DBA Training
For Apps DBA Beginner's
  • Start From Here
  • Order of Apps Study
  • 11i Software
  • Apps Architecture
  • Install Apps 11i
  • Install Apps 11i Part II
  • Startup/Shutdown
  • Request Flow in Apps
  • Various TOP's
  • Cloning Basics
  • Cloning I
  • Cloning II
  • Autoconfig Basics
  • Autoconfig Config File
  • Template Files in Autoconfig
  • Discoverer Overview
  • Workflow Mailer in Apps
  • Printing Overview
  • Configuring Printers
  • Pasta Printing
  • Performance Overview
  • Install 10g Application Server
  • Apps DBA Certification
  • Common DBA Topics
  • Scared of RAC ?
  • Install RAC on your laptop part I
  • Step by Step build RAC part II
  • Step by Step install RAC using VMWare part III
  • Install Oracle RAC Database part IV
  • oraInventory Basics
  • Install Database 10.2.0.1
  • Upgarde DB to 10.2.0.2
  • Fusion
  • Is Fusion a conFusion ?
  • Fusion Middleware Overview I
  • Fusion Middleware Overview II
  • Application Integration Architecture
  • SOA Install Part I
  • SOA Install Part II
  • SOA Install Part III
  • Install BPEL Process Manager
  • Apps Integration OID/SSO
  • Management Qs for Apps Integration with SSO/OID
  • 25 things your DBA should know for Apps/SSO integration
  • Identity Management
  • COREid Overview
  • Oracle COREid or Idm & Access Mgmt overview
  • Installing Access Manager 10.1.4
  • WebGate request flow
  • Identity Manager Architecture
  • Installing Identity Manager
  • OAS-SSO Overview
  • OID Overview
  • OID Basics II
  • OID Cluster
  • OID Integration with Other LDAP Servers overview
  • Integrate OID with AD I
  • OID Replication Overview
  • Multi Master OID Replication
  • Migrate OID/SSO to new Host
  • Apps R 12
  • Socket or Servlet in R12
  • Startup/Shutdown Scripts in R12
  • Unified APPL_TOP
  • Apps R 12.0.1
  • Difference between 11i & R12 Technical
  • Prepare for R12 Installation
  • Install VMWare on Windows for Linux Install
  • Install Linux for Apps R12 Install
  • Install Apps R12 on Linux Virtual Machine
  • R12 Upgrade & database
  • R12 Fils System Changes
  • R12 Release Date
  • 10g Application Server
  • 10g AS Overview
  • Installing 10g AS
  • Start/Stop 10g AS
  • Web Cache Basics
  • Single Sign-On Overview
  • OID Overview
  • Cloning 10g AS
  • 10g AS Middle tier Cloning & Overview
  • OID Cluster Imp. Points
  • CPU Patch, Infra Tier
  • CPU Patch, Middle Tier
  • AS Guard / DR Overview
  • Oracle Apps 11i
  • My Site
  • Apps DBA Scripts
  • Apps DBA Interview Q's
  • 11i JVM's
  • Apps Training in India
  • 11i Health Check
  • Good Metalink Notes
  • About Me  
  • For Advanced Apps DBA
  • URL Firewall in DMZ Setup
  • Upgrade Apps to 11.5.10.2
  • Load Balancer Overview
  • Load Balancer Config
  • HTTP layer Load balancing in Apps 11i
  • Dataguard Overview
  • Configure Dataguard / Standby database
  • Standby Site for Apps 11i
  • How to change Hostname on Apps Instance
  • SSL Overview in Apps
  • Configure SSL to Web Server
  • Key Points for SSL in Apps
  • Reduce Patch Timing
  • Reduce Patch Timing II
  • Shared APPL_TOP Overview
  • Configure Shared APPL_TOP
  • 11i Database Upgrade I
  • 11i Database Upgrade II
  • Change Session TimeOut
  • Patching
  • Apps Patch Basics
  • Apps Patch Basics II
  • Apply Apps Patch
  • CPU Overview
  • Steps to Apply CPU Patch
  • CPU Patch on Infra Tier
  • CPU Patch on AS Middle Tier
  • Troubleshooting
  • Web Server TS Part I
  • Web Server TS Part II
  • CM Troubleshooting
  • 10g Discoverer with Apps
  • Discoverer Bascis in Apps
  • Discoverer 10g Upgarde Basics
  • Discoverer 10g Configuration Steps with 11i
  • Collaboration Suite
  • Collaboration Suite
  • Calendar Overview
  • Sync Calendar from Mobile I
  • Sync Calendar from Mobile II
  • OCS Mail Architecture
  • Apex / HTMLDB
  • Install Apex 2.2
  • Apex with SSO part I
  • Apex with SSO part II
  • SSO Authentication Schemes
  • Certification
  • Possible Certifications for DBA
  • Apps DBA Certification
  • 1Z0-311-OCA-10g OAS Overview
  • 1z0-312-OCP-10g OAS Overview
  • 1z0-312 - Managing Customization and Topology
  • 1z0-312 - Cloning and Staging OAS
  • Apps DBA Jobs
  • Working / Apps DBA in UK
  • Oracle Recruiting Apps DBA's
  • Apps DBA Jobs Updated Regularly
  • Apps Job at Satyam
  • Useful Links
  • Good Metalink Notes
  • petefinnigan's Oracle Security
  • Linux Basics
  • Atul Mehta's Oracle Links
  • Others
  • Apps DBA Training Institute
  • 1 Year Journey of this Blog
  • How To ?
  • Change APPS Password
  • Preserve Customizations
  • Blog Roll
    Apps / E-Business Suite
  • Steven Chan Apps
  • Anil Passi Technical
  • Fadi Apps DBA
  • Senthil Apps DBA
  • Bas Klaassen EBS DBA
  • Sam Apps DBA
  • Black Geek Apps DBA
  • Bandari Apps
  • Vikram ERP Architect
  • OraBiz
  • Eric Core DBA
  • SOA
  • Navdeep Saini Apps DBA
  • tugdualgrall Web Services
  • Mohan Dutt's Apps Certification
    IdM
  • Nishant Kaushik's IdM
  • Nulli Blog, OAM
  • Identity Musing
  • Identity nd Access Management
    Core DBA
  • Vidya Bala DBA
  • Sabdar DBA
    Data Management
  • Ivan Pellegrin Data Management


  • We have moved to http://onlineAppsDBA.com kindly check http://onlineAppsDBA.comin future
    Oracle Applications Request Flow
    Tuesday, August 01, 2006
    Register for R12 upgrade
    Now since you know Basic Overview of Oracle Applications / apps 11i and Installation (If not read my previous posts) . When user makes a request how request flow across different component in E-Business Suite or Oracle applications .
    By now you might be aware of different Services/Component in Oracle apps I repeat them here these are ,
    1. Oracle Web Server ( Apache, Jserv, plssql ) IAS_ORACLE_HOME 9iAS, Ver. 10222
    2. Forms Server ( 8.0.6 ) ORACLE_HOME
    3. Report Server ( in side 8.0.6 ORACLE_HOME)
    4. Concurrent Manager for Batch or Individual Job Processing
    5. Admin Server ( These are used for application dba job like patching , cloning & lot more )
    6. Database Server

    A) So when User makes a request from browser by typing URL like http:// hostname : port so port number they mention is WebServer Port, request hit to Oracle WebServer ( these requests are recorded in logs where wait for next post )
    B) Webserver checks that with http request there is no cookie attached (Cookie is message given by WebServer to Web Browser to identify client) so user is new & it passes login page to User .
    C) User types his Username Password in login window & clicks submit button
    D) Webserver checks that username and passwords need to authenticate against database FND_USER table , so it needs first some user to check client's username password in database . Guess which username password it uses ?? ( GUEST/ORACLE have you ever noticed why this user is there , Hope you know it now it Uses Guest User to autenticate your user in database )
    E) Once user is authenticated its check against FND_RESPONSBILITY..(Confirm again , not sure table name) for Authorization about users responsibilities & assigned responsibilities are presented back to user.
    F) Now these responsibilities are of two type Self Services(served by Jserv/Servlets) or Core Applications Server by Forms Server .
    G) If this is Core responsibility , Apache transfers request to Forms Listener (Listening on Forms port, I will cover how to check Forms Port in my coming posts ), From here request is on Sockets (May be on forms servelets depending on forms config. ) which is persistense connection. From here onwards Client talks directly with Forms Server in forms session and if Client requested some data, forms server makes database connection ( How ?? using tnsnames.ora in 806 HOME or using dbc Database Connector file in FND_SECURE_TOP or wdbsvr.apps in Apache/modplsql/cfg ?) Post your answer in comment section, you can do it as anonymous user without login as well
    H) If User selected Self Service Responsibility like iProcurement, iRecruitement.., Apache forwards request to mod_jserv and request is fullfilled by jserv_component.
    Have you ever noticed why webserver donot ask client to login again until session timeout ??( I know you know answer now its because of cookies as User have valid cookies , try deleting cookies from browser & see Oracle Apache asks you to relogin .
    I) When your webserver tries to connect to database for plsql or any other type of connection it asks mod_pls to fulfill request but where is this connection information stored ? ( dbc file or wdbsvr.app file or somthing else ? )
    J) Users submits his requests for batch processing or somthing else ( Gather Stats done by Sysadmins or Apps DBA's) these kind of requests are fullfilled by Concurrent Manager ( More about CM, including CM tuning still to come in future )
    G) When user want to see reports of all these things request is being forwarded to Reports Server .

    You as Sysadmin or Oracle Apps DBA need not to worry how this request transmission happens from one service to another , this is transparent to you me or User . ( Let Oracle do this behind the scene ) You should know request flow as this is most crucial during Troubleshooting (I'll cover in future posts ) to pinpoint in which compnent issue is & where to look for .

    If you like this post please tell it to your other Apps DBA friends & Other budding Oracle Apps DBA's . Please don't forget to leave comment & for Advanced Apps DBA , WebServer configuration file system & configuration files look my post at http://atul-oracle.blogspot.com


    Learn Oracle Apps DBA
    Free Apps DBA Training

    Labels:


    We have moved to

    http://onlineAppsDBA.com

    kindly check onLineAppsDBA.com in future

    add to del.icio.usdel.icio.us  ¦  digg thisDigg This  ¦  My Yahoo!My Yahoo  ¦  RedditReddit  ¦  add to BlinkListBlinkList   ¦  Furl ItFurl It  ¦  Email This Email This  ¦     Leave Your Comments
    posted by Atul Kumar @ 8:32 PM  
    45 Comments:
    • At 12:26 PM, Blogger fhasweh said…

      nice post keep up the good work

       
    • At 5:04 PM, Blogger Neil jarvis said…

      Good One check similar at

      http://oradbablog.blogspot.com/

       
    • At 7:22 AM, Anonymous Anonymous said…

      Check similar at Advanced Apps DBA

       
    • At 6:20 PM, Anonymous Anonymous said…

      Hi Atul,

      Would like to Thank You very much for the initiative you have taken and helping the DBA's like me.

      Thank You once Again.

      Varaha

       
    • At 12:46 PM, Anonymous Anonymous said…

      Atul,

      I followed all your atricles in " For Apps DBA beginner's " they are very good.
      I can definetly refer your site as a good steping stone for Starter APPS DBA's.

      Once again my heartfully thanks to you for doing this kind of job for future APPS DBA's. So, pl. keep posting.


      Regard
      Sashidhar

       
    • At 1:57 PM, Blogger Atul Kumar said…

      Sashidhar,
      Thanks a lot for compliment & feedback .

      Atul

       
    • At 8:32 PM, Blogger Vidya Balasubramanian said…

      Atul great wrk - as part of these - can you shed some lite on the different and important FND tables that dba's need to be aware of

      Thanks,
      Vidya

       
    • At 8:33 PM, Blogger Vidya Balasubramanian said…

      Atul great wrk - as part of these - can you shed some light on the different and important FND tables that apps dba's need to be aware of

      Thanks,
      Vidya

       
    • At 7:00 AM, Blogger Atul Kumar said…

      Vidya,
      Thanks a lot for your compilments. I have listed few important Apps tables at my site .
      To view Click Here for Imp Tables in Apps

       
    • At 7:01 AM, Blogger Atul Kumar said…

      Sorry I suppose above link is not working here is link

      Click Here for Important Tables

       
    • At 10:07 AM, Blogger fhasweh said…

      one late qustion autl, is there any way on earth that i can know the ip address of the clinet who are currently using my froms.

      fadi

       
    • At 10:30 AM, Blogger Atul Kumar said…

      Fadi,
      You can raise as many questions you have , thats motto of this blog & site http://teachmeoracle.com ( Discovering Oracle Apps )

      You can find out user name of person initiating forms but finding IP address of that person might be tricky.

      You can get list of all IP address accessing your web server via access_log under Apache/Apache/logs

       
    • At 4:41 AM, Anonymous Anonymous said…

      Hi Atul,

      Can you please clarrify my doubt?

      (GUEST/ORACLE have you ever noticed why this user is there , Hope you know it now it Uses Guest User to autenticate your user in database )

      My DBC file contains

      GUEST_USER_PWD=GUEST/ORACLE

      But I could not connect to the database using this user

      SQL> connect GUEST/ORACLE
      ERROR:
      ORA-01017: invalid username/password; logon denied


      Warning: You are no longer connected to ORACLE.

      Even I could not connect using this username and pwd in the appication.

      Please let me know is this database user or application user? If it is application user then using which user it is connecting to database to verify the application user and pwd?

      Seelan

       
    • At 7:55 AM, Blogger Atul Kumar said…

      Seelan,
      This user is application user & not database user.
      You should find this user in FND_USER (S) & not in DBA_USERS


      Atul

       
    • At 11:56 PM, Anonymous Anonymous said…

      Hi Atul,
      I think while logging in from the initial page(single sign on),oracle use APPLSYSPUB user,otherwise w/o logging into the database how FND_USERS can be verified for username.

      please ,clarify in thorough details,

      regards,
      Vishal

       
    • At 1:22 AM, Blogger Atul Kumar said…

      Hi Vishal,
      I think you are saying right let me cross verify & I'll update accordingly

      Atul

       
    • At 4:07 PM, Anonymous Anonymous said…

      Hi Everyone,

      This is my understanding about the request flow in oracle apps and i would like to share with you

      1. Webserver receives the user request for the particular port number. Web server Binds the request with the port number
      2.Based on the cookie webserver serves the request by sending login page
      3. The application user name and password is entered by the user(operations/welcome)
      4. The application user login session is validated by connecting to Applsyspub/pub. Applsyspub contains application user session ,invalid logins,security related tables. The user & security is validated here
      5. The responsibility page is displayed. User selects a particular responsibility
      6. The responsibility and application name is validated by connecting to Applsys schema(fnd_Responsibility, fnd_application.......)
      Note: Here we should remember the difference between applsys and apps schema. Applsys schema contains ad,fnd objects whereas apps schema is a global schema contains all application objects.
      7. Once the application is validated , Connecting to apps schema to get access application tables. This is the reason why we should have apps and applsys passwords should be same
      8. Once a particular form is selected the .dbc file is accessed to get the information about the GUEST username/pwd

      But i am not sure when the webdbsvr.app file is getting used. My assumption is between step 3 and 4 the webdbsvr.app should get accessed to obtain the apps password.

      Atul and everyone, Please correct me if i am wrong in my understanding.

      reg
      malar

       
    • At 5:21 PM, Blogger Atul Kumar said…

      Malar,
      Very well explained , Yes you are right & I need to change my bit about GUEST by your APPLSYSPUB (It uses applsyspub first time)


      wdbsvr.app is used by mod_pls in Apache (apps password in this file)
      mod_pls is module in Oracle-Apache for executing plsql packages from browser.

      its somthing like dads.conf in standalone application server

      Atul

       
    • At 5:42 AM, Anonymous Anonymous said…

      Hi Atul ,

      For beginners like me you are an angel in disguise.

      Thanks you very much ,
      Aarif

       
    • At 8:18 AM, Blogger Shiva Geereddy said…

      Hi Atul,

      Your practical apps notes are excellent inspiration for all oracle apps dba's around the globe. We really appreciate your effort - Shiva Geereddy

       
    • At 8:19 AM, Blogger Shiva Geereddy said…

      good inspiration for apps dba's

       
    • At 9:39 AM, Blogger Atul Kumar said…

      Thanks a lot shiva

       
    • At 4:20 PM, Blogger Unknown said…

      Atul/Malar,

      I didnt understand when .dbc file is going to use, either when accessing a particular form or while giving application username/pwd.

      Thanks,
      Sai

       
    • At 6:41 PM, Blogger Atul Kumar said…

      Sai,
      I noticed that if dbs file is corrupt or not present forms connection errors out though initial login works so I suppose this is forms which is issue but you can try at your end as well by moving dbc file to other location & try at what point it errors out.

       
    • At 1:36 AM, Anonymous Anonymous said…

      Hi Atul,

      I think you should have added that the Forms Server process spawns a forms client process ( f60sebmx) which actually talks to the client. The above statement remains correct when forms listener servlet is not used.

      Chandra

       
    • At 7:35 AM, Blogger Atul Kumar said…

      Thanks chandra for sharing this info with us all

       
    • At 6:37 PM, Anonymous Anonymous said…

      I had a typo in my previous comment is f60webmx

       
    • At 11:53 AM, Anonymous Anonymous said…

      Hi Atul,

      This is Rohit, just want to correct you that initial connection to validate user is made thru applsyspub/pub, no thru guest/oracle

      Keep up the good Work

      -Rohit

       
    • At 8:11 AM, Blogger Raghu Krishna said…

      hi Atul...

      Thanks for the information....
      and please specify the extensions (url's) as much s possible..

      thanks
      raghu

       
    • At 11:21 AM, Blogger Unknown said…

      HI atul,
      while logging i get the following

      serveranil@192.168.1.85's password:
      Last login: Sat Jun 2 13:04:05 2007 from 192.168.1.232
      -bash: /usrxit/devenv.env: No such file or directory
      [serveranil@surya ~]$

      also when i run APPSORA.env
      [serveranil@surya kingappl]$ . APPSORA.env
      -bash: /usrxit/devenv.env: No such file or directory
      [serveranil@surya kingappl]$


      plz let me know the solution

      rgds,
      krish

       
    • At 12:24 PM, Blogger Atul Kumar said…

      Krish for any issues or problems raise them in forum at http://teachMeOracle.com/forum

       
    • At 9:56 AM, Blogger Pramod said…

      That is a wonderful document which explains the flow in brief.
      Can you please elaborate on significance of 9iAS here.

       
    • At 12:50 PM, Blogger Atul Kumar said…

      Pramod,
      9iAS is webserver listening for HTTP requests

       
    • At 7:01 PM, Anonymous Anonymous said…

      hi this is sasank,
      I have a doubt here, how is the request flow going from web server to DBC file for checking the username:APPLSYSPUB which is said to be used for connecting to the DB.


      Even though if it is connecting to the DB using this Gateway user: APPLSYSPUB, I can't find any synonyms in APPLSYSPUB specifying about the FND_USER table where the application username & password are validated.

      Please clear my doubt as soon as possible "Atul".

       
    • At 8:53 AM, Anonymous Anonymous said…

      Hi Atul,
      I just want to know how the reports server flow is happened like you explained for form server.

      Thanks

       
    • At 11:36 PM, Anonymous Anonymous said…

      Hey Atul,
      Nice work.
      I thought of adding to some of leftover Qns :-).
      I) When your webserver tries to connect to database for plsql or any other type of connection it asks mod_pls to fulfill request but where is this connection
      information stored ? ( dbc file or wdbsvr.app file or somthing else ? )

      The answer to this is, these Database connections are stored and maintained in JDBC Connection Pools. Remember the Below Parameters?

      FND_JDBC_MAX_CONNECTIONS
      FND_JDBC_BUFFER_MIN
      FND_JDBC_BUFFER_MAX
      FND_JDBC_BUFFER_DECAY_INTERVAL
      FND_JDBC_BUFFER_DECAY_SIZE

      Another thought is, during initial client login, the application username/password verification can't be done even using applsyspub account. Even this user doesn't have access to any of FND tables. Now only left accounts are APPS/APPLSYS. Out of them, APPS password is easily available in text files, so this looks like most probable user for validating apps user using FND_USER table.

      Hope this help in better understanding.
      Rajesh

       
    • At 7:10 AM, Anonymous Anonymous said…

      you have good data on this site.

      but a little unmanaged.

      Hope it wont hurt you.. but to improve more in future..

      -Jack

       
    • At 4:55 AM, Anonymous Anonymous said…

      Hey Atul ,

      Your work is awesome , I started learning Apps from your blog without knowing anything about it Thank you vm.
      Now I have successfully installed APPS (vis demo db) , Now I want to make a health checkup of all the major apps component and give the user sign off that everything is working fine , how should i do it .

      Cheers
      SivaG

       
    • At 6:40 AM, Blogger Unknown said…

      Atul,
      It is very much useful for Beginers. Keep up the Good Work.
      Govardhan

       
    • At 6:42 AM, Blogger Unknown said…

      Atul,
      It it very much useful for beginers.Keep up Good Work.
      Govardhan

       
    • At 8:32 PM, Anonymous Anonymous said…

      Hi,

      This blog is excellent. Please keep up the good work.

      But I have an issue, your sexy smile is distracting my attention when reading. Can you please keep your photo on the home page only ?

      ;)

      Take care and thank u ;)

       
    • At 5:30 PM, Blogger Unknown said…

      i have a question - can i download ORACLE R12 suite from ORACLE Edelivery site for free? my friends say its a an expensive s/w so its not possible i can get it for free..i m tryin to learn apps...so i thought i can follow ur blog and install R12 or any other version on to my laptop, but my friends have crashed my hopes sayin I will have to pay millions to get that suit is it true? please reply to my email - akhil_joey@yahoo.com, thnx

       
    • At 2:13 PM, Anonymous Anonymous said…

      Very usefull info..Thanks a lot atul..

       
    • At 2:28 PM, Anonymous Anonymous said…

      hi Atul,
      Autoconfig is failing at bisdblrp.sh cause apps user name is more than 12 characters.
      either I have to apply the patch or I need to change the username of apps so that it will be less than 12 character.
      If I want to change the name of apps user what steps I should follow..I want to change because I want to avoid patching.

      kindly inform..thanks..subodh

       
    • At 12:24 PM, Anonymous Subrata Mondal said…

      Hi,

      I went through all comments in this blog. This is a very good try to explain the connectivities. But still the questions reamins.
      1. Even if you lock the db user applsyspub, you can login to the application. Only while accessing forms you will receive error. Which implies that login does not depend on applsyspub. It is used to render the forms rather.
      2. Guest user and password is used to get the foundation password which is used to decrypt the user password and compare with the one entered by the user. So guest user/password is used while logging in, but not for db connection. If you comment out the guest user/password line in dbc file and try logging into the system, it will be clear.

      3. I think it uses apps or applsys user for initial login to the db, but where it get these information is not clear to me.

      Please investigate to proceed further and find out the procedure.

       
    Post a Comment
    << Home
     
    About Me


    Name: Atul Kumar
    Home: London, United Kingdom

    About Me: I am Independent Oracle consultant. If you wish to hire me on Contract or to Quote on project basis contact me at
    atul @ onlineappsdba.com

    See my complete profile

    View Atul Kumar's profile on LinkedIn

    E-mail Subscription

    Enter your email address:

    Delivered by FeedBurner

    Search
    Only search this Blog
    Categories
  • Advanced Topics
  • Application Server
  • Apex / HTMLDB
  • Apps 11i
  • Apps R12
  • Autoconfig
  • Basics
  • Certification
  • Cloning
  • Discoverer
  • Fusion
  • OID
  • Patching
  • Printer
  • Single Sign-On
  • Useful Sites & Forum
  • Previous Post
    Archives
    Add On
     

    Add to Technorati Favorites

     

     

    Add to Google

     

    Add to My AOL

     

    Subscribe in Bloglines

     

    Subscribe in NewsGator Online

     
    Powered by



    Hits Since 30, Jul 06

    Blog Counter

    Technology Blogs - Blog Top Sites
    Comments
    ADs
    Copyright © 2006 teachmeoracle.com All rights reserved Presented by Atul Kumar