3 Replies Latest reply on May 16, 2012 1:42 PM by 915154

    Multiple listeners in Weblogic

    user12025489
      Hi:

      Can I deploy multiple Apex listeners pointing to different Databases in the same Weblogic server? Is there any documentation or OTN Notes on this?

      Regards
      David
        • 1. Re: Multiple listeners in Weblogic
          Prabodh
          Yes, it is possible to setup multiple ApexListeners on one Weblogic server. Each Apexlistener essentially has to be a separate Domain in Weblogic.

          There is no document for setting up Weblogic domains in Apex documentation, it is in Web Logic documentation :-)

          Once you have setup the Domain in Weblogic you follow the steps given in the ApexListener Installation guide , the Weblogic section. The Installation Guide is in the ApexListener ZIP file that you download, under docs.

          Regards,
          • 2. Re: Multiple listeners in Weblogic
            Udo
            Hi David,
            Can I deploy multiple Apex listeners pointing to different Databases in the same Weblogic server? Is there any documentation or OTN Notes on this?
            You can do that.
            There is no such documentation for Weblogic I know of, probably because it is easier than you think:
            If it would be okay for you that the same users will get access to the APEX Listener online configuration +/listenerAdmin+ and or online status page +/listenerStatus+, you could just deploy APEX Listener multiple times and give each a different name. If you have different APEX versions or need a different instance of the static contents ("images") for APEX you can also deploy these multiple times (or use virtual directory mapping for multiple aliases). Note that you'll have to reset the APEX images prefix to fit the context path you've configured on your WLS.
            I'd also recommend to setup the config.dir in the web.xml of your APEX Listener war file before you deploy it, so you can make sure each APEX Listener instance will use its own config file. See the APEX Listener documentation for further details on how to configure the config file.

            In case you can't reconfigure the images prefix or you have to separate the administrative users for +/listenerAdmin+ and +/listenerStatus+ you'll have to put the APEX Listener deployments into separate domains, as mentioned by Prabodh above.

            -Udo
            • 3. Re: Multiple listeners in Weblogic
              915154
              You don't need multiple domains to run multiiple listeners. This is exactly what we are doing in or development environment.

              As mentioned by Udo, you need to have a different config dir configuration for each apex.war deployment in WebLogic.

              For example, you may have two development databases. DEV1 and DEV2

              copy the apex.war file twice and rename to apex_dev1.war for the DEV1 instance and apex_dev2.war for the DEV2 instance.

              Unzip/unjar the file and modify the web.xml file as follows in apex_dev1.war:

              <context-param>
              <param-name>config.dir</param-name>
              <param-value>${apex_dev1.dir}</param-value>
              </context-param>

              Unzip/unjar the file and modify the web.xml file as follows in apex_dev2.war:


              <context-param>
              <param-name>config.dir</param-name>
              <param-value>${apex_dev2.dir}</param-value>
              </context-param>

              In the WebLogic console go to the Server configuration->Server Start tab and under the Arguments section enter the following (or wherever depending on your environment):

              -Dapex_dev1.dir=/ora/Middleware/user_projects/applications/apex_dev1_config;-Dapex_dev2.dir=/ora/Middleware/user_projects/applications/apex_dev2_config



              You must create bothdirectories first before starting the server.

              Deploy the new war files via the console in Weblogic and then goto /apex_dev1/listenerConfigure and configure it for the appropriate database. Do the same for apex_dev2.

              This way you will know which DB you hitting via the URL.

              good luck.