Installing Liferay DXP on WebLogic 12c R2

Although you can install Liferay DXP in a WebLogic Admin Server, this isn’t recommended. It’s a best practice to install web apps, including Liferay DXP, in a WebLogic Managed server. Deploying to a Managed Server lets you start or shut down Liferay DXP more quickly and facilitates transitioning into a cluster configuration. This article therefore focuses on installing Liferay DXP in a Managed Server.

Before getting started, create your Admin and Managed Servers. See WebLogic’s documentation for instructions on setting up and configuring Admin and Managed Servers.

You should also read the following articles to familiarize yourself with Liferay DXP’s general installation steps:

Before proceeding, you must download these Additional Files:

  • Liferay DXP WAR file
  • Dependencies ZIP file
  • OSGi Dependencies ZIP file

Checkpoint

The following jars should be present within the Dependencies ZIP file:

  1. com.liferay.petra.concurrent.jar
  2. com.liferay.petra.executor.jar
  3. com.liferay.petra.function.jar
  4. com.liferay.petra.io.jar
  5. com.liferay.petra.lang.jar
  6. com.liferay.petra.memory.jar
  7. com.liferay.petra.nio.jar
  8. com.liferay.petra.process.jar
  9. com.liferay.petra.reflect.jar
  10. com.liferay.petra.string.jar
  11. com.liferay.registry.api.jar
  12. hsql.jar
  13. portal-kernel.jar
  14. portlet.jar

The following folders should be present within the /liferay/osgi folder:

  1. Configs
  2. Core
  3. Marketplace
  4. Modules
  5. Portal
  6. Static
  7. Test
  8. War

Without any further ado, get ready to install Liferay DXP in WebLogic!

Configuring WebLogic’s Node Manager

WebLogic requires a Node Manager to start and stop managed servers. Before installing Liferay DXP, you must configure the Node Manager included with your WebLogic installation. You’ll do this via the domains/your_domain_name/nodemanager/nodemanager.properties file. Open this file and set the SecureListener property to false:

SecureListener=false

This setting disables the encryption (SSL) requirement for the Node Manager, allowing it to accept unencrypted connections. Although it’s possible to run Liferay DXP with this property set to true, you may encounter difficulties doing so. Also note that with SecureListener set to true, you must configure your machine in the Admin Server’s console to accept unencrypted connections from the Node Manager. To do this, first log in to your Admin Server and select EnvironmentMachines from the Domain Structure box on the left. Click your machine in the table and then select the ConfigurationNode Manager tab. In the Type field, select Plain from the selector menu, and then click Save. You must restart your Admin Server for this change to take effect.

If you’re running WebLogic on Mac or Linux, you may also need to set the NativeVersionEnabled property to false:

NativeVersionEnabled=false

This tells the Node Manager to start in non-native mode. This is required for the platforms where WebLogic doesn’t provide native Node Manager libraries.

Configuring WebLogic

Next, you must set some variables in two WebLogic startup scripts. These variables and scripts are as follows. Be sure to use set instead of export if you’re on Windows.

  1. your-domain/startWebLogic.[cmd|sh]: This is the Admin Server’s startup script.

  2. your-domain/bin/startWebLogic.[cmd|sh]: This is the startup script for Managed Servers.

    Add the following variables to both startWebLogic.[cmd|sh] scripts:

    export DERBY_FLAG="false"
    export JAVA_OPTIONS="${JAVA_OPTIONS} -Dfile.encoding=UTF-8 -Duser.timezone=GMT -da:org.apache.lucene... -da:org.aspectj..."
    export MW_HOME="/your/weblogic/directory"
    export USER_MEM_ARGS="-Xmx2048m"
    

    The DERBY_FLAG setting disables the Derby server built in to WebLogic, as Liferay DXP doesn’t require this server. The remaining settings support Liferay DXP’s memory requirements, UTF-8 requirement, Lucene usage, and Aspect Oriented Programming via AspectJ. Also make sure to set MW_HOME to the directory containing your WebLogic server on your machine. For example:

    export MW_HOME="/Users/ray/Oracle/wls12210"
    
  3. Some of the settings are also found in the your-domain/bin/SetDomainEnv.[cmd|sh] . Add the following variables (Windows):

    set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx2048m 
    set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx2048m
    

    or on Mac or Linux:

    WLS_MEM_ARGS_64BIT="-Xms512m -Xmx2048m"
    export WLS_MEM_ARGS_64BIT
    
    WLS_MEM_ARGS_32BIT="-Xms512m -Xmx2048m"
    export WLS_MEM_ARGS_32BIT
    
  4. Set the Java file encoding to UTF-8 in your-domain/bin/SetDomainEnv.[cmd|sh] by appending -Dfile.encoding=UTF-8 ahead of your other Java properties:

    JAVA_PROPERTIES="-Dfile.encoding=UTF-8 ${JAVA_PROPERTIES} ${CLUSTER_PROPERTIES}"
    
  5. You must also ensure that the Node Manager sets Liferay DXP’s memory requirements when starting the Managed Server. In the Admin Server’s console UI, navigate to the Managed Server you want to deploy Liferay DXP to and select the Server Start tab. Enter the following parameters into the Arguments field:

    -Xmx2048m -XX:MaxMetaspaceSize=512m
    

    Click Save when you’re finished.

Next, you’ll set some Liferay DXP-specific properties for your Liferay DXP installation.

Setting Liferay DXP Properties

Before installing Liferay DXP, you must set the Liferay Home folder’s location via the liferay.home property in a portal-ext.properties file. You can also use this file to override other Liferay DXP properties that you may need.

First, decide which folder you want to serve as Liferay Home. In WebLogic, your domain’s folder is generally Liferay Home, but you can choose any folder on your machine. Then create your portal-ext.properties file and add the liferay.home property:

liferay.home=/full/path/to/your/liferay/home/folder

Remember to change this file path to the location on your machine that you want to serve as Liferay Home.

Now that you’ve created your portal-ext.properties file, you must put it inside the Liferay DXP WAR file. Expand the Liferay DXP WAR file and place portal-ext.properties in the WEB-INF/classes folder. Later, you can deploy the expanded archive to WebLogic. Alternatively, you can re-WAR the expanded archive for later deployment. In either case, Liferay DXP reads your property settings once it starts up.

If you need to make any changes to portal-ext.properties after Liferay DXP deploys, you can find it in your domain’s autodeploy/ROOT/WEB-INF/classes folder. Note that the autodeploy/ROOT folder contains the Liferay DXP deployment.

Next, you’ll install Liferay DXP’s dependencies.

Installing Liferay DXP Dependencies

You must now install Liferay DXP’s dependencies. Recall that earlier you downloaded two ZIP files containing these dependencies. Install their contents now:

  1. liferay-dxp-digital-enterprise-dependencies-[version].zip: Unzip this file and place its contents in your WebLogic domain’s lib folder.

  2. liferay-dxp-digital-enterprise-osgi-[version].zip: Unzip this file and place its contents in the Liferay_Home/osgi folder (create this folder if it doesn’t exist).

You must also add your database’s driver JAR file to your domain’s lib folder. Note that although Hypersonic is fine for testing purposes, you should not use it for production Liferay DXP instances.

Checkpoint

Your domain lib folder has these jars:

  • com.liferay.petra.concurrent.jar
  • com.liferay.petra.executor.jar
  • com.liferay.petra.function.jar
  • com.liferay.petra.io.jar
  • com.liferay.petra.lang.jar
  • com.liferay.petra.memory.jar
  • com.liferay.petra.nio.jar
  • com.liferay.petra.process.jar
  • com.liferay.petra.reflect.jar
  • com.liferay.petra.string.jar
  • com.liferay.registry.api.jar
  • hsql.jar
  • portal-kernel.jar
  • portlet.jar

A JDBC driver for your database has been added to your domain’s lib folder. Here are some common JDBC drivers:

Your [Liferay Home]/osgi folder has these subfolders:

  • Configs
  • Core
  • Marketplace
  • Modules
  • Portal
  • Static
  • Test
  • War

Next, you’ll configure your database.

Database Configuration

Use the following procedure if you want WebLogic to manage your database for Liferay DXP. You can skip this section if you want to use Liferay DXP’s built-in Hypersonic database.

  1. Log in to your AdminServer console.

  2. In the Domain Structure tree, find your domain and navigate to ServicesJDBCData Sources.

  3. To create a new data source, click New. Fill in the Name field with Liferay Data Source and the JNDI Name field with jdbc/LiferayPool. Select your database type and driver. For example, MySQL is MySQL’s Driver (Type 4) Versions:using com.mysql.jdbc.Driver. Click Next to continue.

  4. Accept the default settings on this page and click Next to move on.

  5. Fill in your database information for your MySQL database.

  6. If using MySQL, add the text ?useUnicode=true&characterEncoding=UTF-8&\useFastDateParsing=false to the URL line and test the connection. If it works, click Next.

  7. Select the target for the data source and click Finish.

  8. You must now tell Liferay DXP about the JDBC data source. Create a portal-ext.propreties file in your Liferay Home directory, and add the line jdbc.default.jndi.name=jdbc/LiferayPool.

Alternatively, you can make the above configuration strictly via properties in the portal-ext.properties file. To do so, place the following properties and values in the file. Be sure to change the your* values with the values appropriate for your database’s configuration (if using MySQL):

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://your.db.ip.address/yourdbname?useUnicode?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=yourdbuser
jdbc.default.password=yourdbpassword

Next, you’ll configure your mail session.

Mail Configuration

If you want WebLogic to manage your mail session, use the following procedure. If you want to use Liferay’s built-in mail session (recommended), skip this section.

  1. Start WebLogic and log in to your Admin Server’s console.

  2. Select ServicesMail Sessions from the Domain Structure box on the left hand side of your Admin Server’s console UI.

  3. Click New to begin creating a new mail session.

  4. Name the session LiferayMail and give it the JNDI name mail/MailSession. Then fill out the Session Username, Session Password, Confirm Session Password, and JavaMail Properties fields as necessary for your mail server. See the WebLogic documentation for more information on these fields. Click Next when you’re done.

  5. Choose the Managed Server that you’ll install Liferay DXP on, and click Finish. Then shut down your Managed and Admin Servers.

  6. With your Managed and Admin servers shut down, add the following property to your portal-ext.properties file in Liferay Home:

    mail.session.jndi.name=mail/MailSession
    

    Liferay DXP references your WebLogic mail session via this property setting. If you’ve already deployed Liferay DXP, you can find your portal-ext.properties file in your domain’s autodeploy/ROOT/WEB-INF/classes folder.

Your changes take effect upon restarting your Managed and Admin servers.

Deploying Liferay DXP

As mentioned earlier, although you can deploy Liferay DXP to a WebLogic Admin Server, you should instead deploy it to a WebLogic Managed Server. Dedicating the Admin Server to managing other servers that run your apps is a best practice.

Follow these steps to deploy Liferay DXP to a Managed Server:

  1. Make sure the Managed Server you want to deploy Liferay DXP to is shut down.

  2. In your Admin Server’s console UI, select Deployments from the Domain Structure box on the left hand side. Then click Install to start a new deployment.

  3. Select the Liferay DXP WAR file or its expanded contents on your file system. Alternatively, you can upload the WAR file by clicking the Upload your file(s) link. Click Next.

  4. Select Install this deployment as an application and click Next.

  5. Select the Managed Server you want to deploy Liferay DXP to and click Next.

  6. If the default name is appropriate for your installation, keep it. Otherwise, give it a name of your choosing and click Next.

  7. Click Finish. After the deployment finishes, click Save if you want to save the configuration.

  8. Start the Managed Server where you deployed Liferay DXP. Liferay DXP precompiles all the JSPs and then launches.

Nice work! Now you’re running Liferay DXP on WebLogic.

« Installing Liferay DXP on tc ServerInstalling Liferay DXP on WebSphere »
¿Fue útil este artículo?
Usuarios a los que les pareció útil: 0 de 0