The contents of this file are subject to a BSD license (the "License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License here
openCRX is the leading open source CRM tool. openCRX is based on the openMDX  application framework, an open source application framework based on the OMG's model driven architecture (MDA) standards. This guarantees maximum openness, standards compliance and a state-of-the-art component-based architecture.
This book describes the installation of openCRX for WebLogic 8.x. The intended audience are openCRX and application server system administrators.
The book assumes that you are familiar with WebLogic deployment concepts and administration.
As a first step select the openCRX version you want to install. Based on the published version compatibility information you can determine the appropriate versions of openMDX and WebLogic.
As a first step you must install the database as described in the database distribution. E.g. if you want to install openCRX for Oracle you must first install Oracle and the corresponding openCRX database schema. Similarly, if you want to install openCRX for MS SQL you must first install MS SQL and the corresponding openCRX database schema. If you have successfully installed the database you are ready to continue with the WebLogic setup..
In a first step you must install WebLogic. You should be able to start and stop WebLogic and launch the WebLogic Server Console as shown in Figure 3-1.
Figure 3-1. Launch the WebLogic Server Console.
The openCRX installation requires the following steps:
As a first step you must copy the openMDX and JDBC driver libraries to a place where WebLogic has access to it. You can do this as follows:
Second you must add some options to the Java Virtual Machine configuration. You can do this by adding the following settings to the WebLogic startup script, e.g. startWebLogic.cmd as follows:
Example 5-1. openCRX-specific Java VM properties
rem Setup openCRX-specific properties set DOMAIN_HOME=c:\pgm\bea\user_projects\domains\mydomain set CLASSPATH=%CLASSPATH%;%DOMAIN_HOME%\lib\openmdx-kernel.jar set CLASSPATH=%CLASSPATH%;%DOMAIN_HOME%\lib\msutil.jar;% set CLASSPATH=%CLASSPATH%;%DOMAIN_HOME%\lib\msbase.jar; set CLASSPATH=%CLASSPATH%;%DOMAIN_HOME%\lib\mssqlserver.jar set JAVA_OPTIONS=%JAVA_OPTIONS% -Dorg.openmdx.compatibility.base.application.j2ee.domain=apps set JAVA_OPTIONS=%JAVA_OPTIONS% -Dorg.openmdx.compatibility.base.application.j2ee.server=server1 set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.protocol.handler.pkgs=org.openmdx.kernel.url.protocol set JAVA_OPTIONS=%JAVA_OPTIONS% -Dorg.openmdx.log.config.filename=%DOMAIN_HOME%\server.log.properties set JAVA_OPTIONS=%JAVA_OPTIONS% -Dmail.SSLSocketFactory.class=org.opencrx.ssl.DefaultSSLSocketFactory @REM Call WebLogic Server ...
Before you continue you must restart (stop and start) WebLogic. The newly configured libraries and environment variables are not active until you restart WebLogic.
The openCRX application requires the configuration of a JDBC datasource which connects to the openCRX database. You can do this a follows:
Navigate to Services > JDBC > Connection Pools and click on Configure a new JDBC Connection Pool. Select the database vendor from the drop down, e.g. MS SQL Server as shown in Figure 6-1.
Figure 6-1. Select the JDBC database vendor.
Then select the driver from the Database Driver drop down, e.g. Microsoft's MS SQL Server Driver (Type) Version 2000 as shown in Figure 6-2. Then click continue.
Figure 6-2. Select the JDBC driver.
On the next form you must configure the connection pool. You must set the following properties:
This is shown in Figure 6-3.
Figure 6-3. Configure the connection pool.
Then click continue.
Verify the database connection properties on the next page as shown in Figure 6-4 and then click Test Driver Configuration.
Figure 6-4. Configure the connection pool.
If everything works fine you should see the Connection successful message as shown in Figure 6-5. Click Create and deploy. This finally creates the connection pool.
Figure 6-5. Create and deploy the connection pool.
As next step you must create a datasource using the connection pool you have just created. Navigate to Services > JDBC > Data Sources and click Configure a new JDBC Data Source as shown in Figure 6-6. You must set the properties as follows:
Figure 6-6. Create and configure the datasource.
Then click Continue.
On the next page you must select the database connection pool from the drop down. Select the pool you have just created, i.e. crx-CRX as shown in Figure 6-7.
Figure 6-7. Select the connection pool.
Then click Continue.
On the next page you must select the servers where the new datasource should be deployed to. You must select the servers to which you plan to deploy the openCRX application. This is shown in Figure 6-8.
Figure 6-8. Select the deployment targets for the datasource.
Then click Create. You are now finished creating the datasource for openCRX.
openCRX requires that each user is properly authenticated. This allows openCRX to correlate a session to user-specific application data and to perform access control. openCRX does not support non-authenticated sessions. User authentication must be configured as follows:
Figure 7-1. Create user groups.
Then select Global Roles > Configure a new Global Role. Create the roles OpenCrxRoot, OpenCrxAdministrator and OpenCrxUser as shown in Figure 7-2.
Figure 7-2. Create global security roles.
As a next step you must add the Caller is a member of the group condition to the newly created global roles as follows:
This is shown in Figure 7-3.
Figure 7-3. Add member of the group condition to global role.
You now have successfully mapped the role names defined by the openCRX application to WebLogic-defined role names.
You are now ready to create users and make them member of the groups OpenCrxRoot, OpenCrxAdministrator or OpenCrxUser. A user must be member of OpenCrxRoot if he/she wants to access the servlet opencrx-core-CRX-Root. The servlet opencrx-core-core-CRX requires to be member of the groups OpenCrxUser or OpenCrxAdministrator. Standard users are member of the group OpenCrxUser. Segment administrators are member of the group OpenCrxAdministrator. This is shown in Figure 7-4. As a start you can add the following users:
Figure 7-4. Create user and make member of group.
openCRX comes with two enterprise application archives (EAR):
In a first step you deploy opencrx-core-CRX-App.ear. Select Deployments > Applications > Deploy a new Application > Upload your files. Click Browse and select the file opencrx-core-CRX-App.ear as shown in Figure 8-1.
Figure 8-1. Upload the opencrx-core-CRX-App application enterprise archive.
Repeat this step for the file opencrx-core-CRX-web.ear. The files are now ready for deployment.
Navigate now to Deployments > Applications > Deploy a new Application and then to the upload directory of your administration server, e.g. domains/mydomain/myserver/upload. In this directory you should find the files you have just uploaded. Select the file opencrx-core-CRX-App.ear as shown in Figure 8-2.
Figure 8-2. Deploy the opencrx-core-CRX-App.ear enterprise archive.
Then click Continue.
On the next screen you must specify the deployment targets and the application name. Leave the default values unchanged and then click Deploy as shown in Figure 8-3.
Figure 8-3. Select the deployment target and assign name.
Repeat the deployment step for the archive opencrx-core-CRX-web.ear.
Finally, the tree of the deployed applications should look as shown in Figure 8-4.
Figure 8-4. Verify the installation.
Before you proceed to the openCRX QuickStart guide make sure that you have deployed and started all applications.
The application is initialized the first time a user calls the login page. If the startup fails you should consult the following log files:
 openCRX - the leading open source CRM solution, opencrx.org.
 openMDX - The leading open source MDA platform, openmdx.org.