Thursday, August 18, 2011

Apex Deployment on Weblogic Server

Hi,
I started my Oracle fusion middleware journey with some good experiments.
Below are the steps which I performed for deploying Apex on Weblogic Server.
(Installation and configuration of Weblogic Server I will cover in separate post and Apex installation and configuration you can get from Apex_tasks Label link)

Apex can be integrated with weblogic by follwing below experiment:


I)
Case study:

WebLogic Server and APEX:
When a WebLogic Server (WLS) is the primary Web server, accessing APEX pages though the WLS requires a proxy. The configuration of APEX generally follows one of two configurations – Apache with mod_plsql or the Embedded PL/SQL gateway. When WebLogic (without Apache) is the main HTTP server, getting APEX to surface on the same port as WebLogic requires some form of proxy.

Overall Approach:
This solution creates a very simple Web Application that invokes a Java Proxy Servlet when a user tries to access APEX pages. Wrapping this Web Application around the Java Proxy Servlet lets the WLS serve APEX without any port conflicts. The WLS Proxy Servlet is a fully documented out of the box tool.
To create and deploy the Web Application simply build the files outlined in this document, deploy the application and then access APEX.

Exploded deployment:

For convenience, this solution takes advantage of the exploded deployment feature of the WLS. In addition to the ability to deploy jar, war and ear files, the WLS can deploy Web Applications as an exploded directory that contains the same contents of the archive file. An exploded archive directory contains the same files and directories as a jar archive. However, the files and directories reside directly in the file system instead of as a single archive file (JAR). This example uses the exploded deployment style to create the Web Application for this example.
Default WebLogic application
The default Web Application is what the server sends to browser clients who do not specify a recognized URI (or specify only “/” as the URI). Each server has only one default Web Application and for this solution to work, this application must be set as the default. If there is already a default, this servlet could be added to the existing application by using an exploded deployment of the default with modification to the web.xml to register the APEX proxy.

II)

Pre-requisites:

1)An Oracle database successfully serving APEX pages. The APEX instance may be on the same or different machine and served from either Apache or the Embedded PL/SQL gateway. In this example, APEX uses the xdb feature of Database which is included in Oracle 11g Database and database is running on the same machine as the WebLogic server and natively appears at the http://10.47.33.10:8080/apex URL.
Database side task:
Open the Apex http port from the Database side
SQL> begin
dbms_xdb.sethttpport('8080');
end;
/

PL/SQL procedure successfully completed.

SQL> select dbms_xdb.gethttpport as "HTTP-Port"
from dual;

HTTP-Port
----------
8080

2) An Oracle WebLogic Server 10.3(11g) running a Node Manger, the Administration Console and a Managed server. This example uses a domain created specifically for this exercise named APEXDemo. The WLS Administration console uses port 7001 and the SOA Managed Server uses port 8001.We are using SOA Managed Server for Deploying Apex

3) There is no other “default” WebLogic application for the Managed Server.

III)Experiment:

Create the APEX Proxy Servlet
1)Create the following directory structure somewhere on disk. This experment assumes the / root disk is used. Note: the apexproxy.war directory name mimics the normal J2EE naming convention for Web Application archive (WAR).

Create the directory structure as given below in linux OS:

#mkdir APEX_PROXY
#cd /APEX_PROXY
#mkdir apexproxy.war
#cd /APEX_PROXY/apexproxy.war

Rest of the steps with screen shots very well documented in the below link:

http://christopherbeck.wordpress.com/2008/09/15/weblogic-server-and-apex/

Thanks Christopherbeck.

Enjoy Oracle Fusion Middleware learning

Best regards,

Rafi.

















No comments:

Post a Comment