Methods To Apply Patches In Weblogic Server

Applying patch from server start script:

After downloading the patch (jar file) follow the below steps:

– Stop your server.

– Then take the path of the folder which has the CRxxxxxx_xxxmpx.jar file and copy it in the CLASSPATH of setDomainEnv.cmd which is in

(<bea home>/user_projects/domains/<your domain name>/bin/setDomainEnv.cmd)

For example, the script would look something like this:

set CLASSPATH=%PRE_CLASSPATH%;%WEBLOGIC_CLASSPATH%; C:\extra\my_projects\doc\CR\CR218639_920mp3.jar;C:\extra\my_projects\doc \CR\ CR360676_920mp3.jar;C:\extra\my_projects\doc\CR\CR367966_920mp3.jar; C:\extra\my_projects\doc\CR\CR368155_920mp3.jar;C:\extra\my_projects\doc\CR\CR370311_920mp3.jar

– Re-start your server.

– You should see the patch applied in the stdout file.

Applying patch through smart update (ONLINE):

–         Run the script bsu.cmd from the directory D:\Bea_Home\utils\bsu to run the smart update utility.

–         Login to smart update using your oracle support credentials.

–         Wait till the patch information is being refreshed.

–         In the Get Patches tab you will find a list of patches which are available for that version of weblogic server

–         If the patch you want to apply is in the list, check the patch and click on download patches button.

–         It will then ask you whether you want to check if this patch conflicts with the patches already applied on the server. Click yes and wait for the results.

–         You will then see that the patch is downloaded if there are no conflicts found.

–         Then go to the tab manage patches, you will find the patch that you downloaded. Click on the button apply and the patch will be applied.

–         If  the patch you need to apply is not there in the list, get the patch id and the passcode of the patch from oracle support.

–         Click on the tab get patches. Then go to the menu Patches -> Retrieve Patches.

–         Enter the patch id and passcode in the next screen.

–         Once downloaded, apply the patch and restart the server.

Applying patch through smart update (OFFLINE):

–         If your support credentials do not work in smart update, you can apply the patch through offline mode.

–         Save the jar file of the patch, prod-info.xml  and patch-catalog.xml which comes with the patch in the D:\Bea_Home\utils\bsu\cache_dir directory.

–         Start the smart update utility and click on work offline.

–         You will see the patch in the downloaded patches as below:

– Click on apply and the patch will be applied.

22 comments

  1. Hi,
    I am a big fan of this blog!! You guys are doing a wonderful Job!!

    I have a question not related to this. I encountered a problem where, a weblogic server is using port 7777 which is not its listen port nor its ssl listen port. Its listening on 8888 and ssl on 8788. However, when i start the server and do a neststat -anp | grep 7777, i get the PID(23135) as the process id of the server. I did an lsof -i :7777 it gives the following output:
    /usr/sbin/lsof -i :7777
    COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
    java 23135 oracle 510u IPv6 921523 TCP *:cbt (LISTEN)

    When i have any other process which occupies this port when this managed server is not running and i start this managed server, there is no issue. the url http://:7777 just hangs same with https://:7777 …is there a way i can know what is the port 7777 being used for in the MS? I checked config files… no luck. I did a grep on the domain folder for the ” 7777 ” no luck…Could you give pointers please. Any help here is greatly appreciated!!

    1. Hi Shawn,

      What does the admin console show? What port is the managed server using? And when you start the managed server, what does it show in the stdout file?

      Are you starting the managed server using a node manager? If so, what listen port have you given for the nodemanager? Also please check if you are using domain wide admin port by any chance.

      Regards,
      Divya

    2. Hi Shawn,

      I think 7777 port might be specified some where in the application code(war/ear) which was deployed on that managed server. This port might be used by the subsystem of this application.

      Regards
      Giribabu

  2. Thanks for your response Divya. I have checked all the above possibilities. The console shows 8888 and nodemanager is on 5556. The domain wide admin port is not enabled, however, its 9002. Would you have an idea of how to get the exact service using that port. BTW, its WLS_spaces managed server in a webcenter domain. I’m experienced with WL but trying to learn webcenter. I tried losf, netstat …they give me the PID of the server, howver, no more info.

  3. Shawn,

    Have you got any chance to check the ‘Local Administration Port Override’ port number in Advanced section of Admin server(Configuration–> Genaral–> Advanced).

    Some time we may access the admin console using this port.

    Regards,
    Gopal

  4. Shawn,

    Are you using a proxy server in front of weblogic server? Because the default port for Oracle HTTP Server is 7777. Check for that as well.

    Regards,
    Divya

  5. Hi Divya,

    I dont know about patches concept in weblogic? Can u tell me at what purpose we will use patches?
    In which scenarios we will use patches?

    Thanks & Regards
    Srivani

    1. Hi Srivani,

      Patches are the bug fixes for weblogic. If there is a functionality that is not working as it should in the weblogic server, oracle gives you a solution for it. These patches need to be applies on the server by one of the above mentioned ways.

      Regards,
      Divya

  6. Hello Admin,

    is there a way to do the above processes without restarting the weblogic server.

    I hope the second process, “Applying patch through smart update (ONLINE):” can be done without restarting the server right ???

    thanks in advance

    1. Hi Rakesh,

      – The server needs to be restarted for the changes to take effect by the patch. You can see the already applied patches in the stdout file (it logs in all the information while the server is starting up). You will see the information like:

      WebLogic Server Temporary Patch for CR381835 Wed Jul 29 11:48:23 IST 2009

      – If you do not have oracle support credentials, use the offline mode where in you do not need to login. I have explained the steps above. But for that, you need to have the patch already with you, which you will only get from oracle support guys.

      Regards,
      Divya

  7. Hi Mohit,

    Try the below syntax for applying the patch in offline mode using command line:

    ./bsu.sh -prod_dir=ORACLE_HOME/wlserver_10.3 -patchlist=patch number -verbose -install

    Best Regards,
    Divya

  8. I am using weblogic 10.3.4,while i start the Admin server it shows the warning BEA-215603 “A VERSION ATTRIBUTE WAS NOT FOUND IN THE ELEMENT DISPATCHER”

    i googled for this pbm some one suggest to update the patches
    i tried it but still i didnt got any changes means still the warning message is there,
    my question is does this warning affects the application DEPLOYMENT

    ANY OTHER IDEAS PLEASE HELP ME

    1. Any updates and patches need to be tested thoroughly in DEV and UAT before applying the same on production systems. You will also need a downtime on prod system to check a particular fix/feature which has been applied but need to have a rollback procedure in place incase the patch fails.

  9. Hello

    Many thanks for the valuable article.

    I have Weblogic Server 12.1.1.0 installed and I am trying to apply the patch April 14.
    When I tried the smart update using bsu command, I could not find the option to login with my user / password. And nothing gets listed under the downloaded patch.

    Please kindly clarify.

    Note: During installation I had a problem in providing user name / password as it kept asking for proxy details even though we do not have proxy and have direct internet access, so I installed as anonymous user without providing user details. Could this be the root cause ?

Leave a Reply