JBoss 7.1.3上でLiferay Portal 6.2を設定する。

この記事では、Liferay Portal 6.2 with JBoss 7.1.3 の基本的なデプロイ方法を紹介します。 これはあくまでも基本的な設定であり、特定の環境に合わせて微調整が必要な場合があることを覚えておいてください。

決議

1. コピーを入手してください。

  • JBoss 7.1.3
  • liferay-portal-6.2.10.1-ee-ga1-20131126141110470.war
  • liferay-portal-dependencies-6.2.10.1-ee-ga1-20131126141110470.zip
  • liferay-portal-src-6.2.10.1-ee-ga1-20131126141110470.zip.

2. フォルダ $JBOSS_HOME/modules/com/liferay/portal/main を作成し、Liferay Portal Dependenciesのzipファイルにあるjarファイルをこのフォルダに解凍します。 zipファイルのjarファイルが $JBOSS_HOME/modules/com/liferay/portal/main フォルダに展開されていることを確認してください。

3. データベースドライバ .jar ファイルをダウンロードし、 $JBOSS_HOME/modules/com/liferay/portal/main フォルダにも入れてください。 デモのために、 MySQL Connector/J ドライバ をダウンロードし、その .jar ファイルを $JBOSS_HOME/modules/com/liferay/portal/main フォルダに配置します。

4. jtds-<JTDS_VERSION>.jarをダウンロードしてください。 ファイルをダウンロードし、 $JBOSS_HOME/modules/com/liferay/portal/main フォルダに挿入します。 この JDBC ドライバの詳細については、 jTDS ホームページでダウンロードして学習することができます。

5. $JBOSS_HOME/modules/com/liferay/portal/mainmodule.xml というファイルを作成します。 これは依存関係を参照します。

<?xml version="1.0"?>

<module xmlns="urn:jboss:module:1.0" name="com.liferay.portal">
   <resources>
       <resource-root path="hsql.jar" />
       <resource-root path="jtds-1.3.1.jar" />
       <resource-root path="mysql.jar" />
       <resource-root path="portal-service.jar" />
       <resource-root path="portlet.jar" />
   </resources>
   <dependencies>
       <module name="ibm.jdk" />
       <module name="javax.api" />
       <module name="javax.mail.api" />
       <module name="javax.servlet.api" />
       <module name="javax.servlet.jsp.api" />
       <module name="javax.transaction.api" />
   </dependencies>
</module>

別のデータベースやJDBCドライバを使用している場合は、MySQLとjTDSリソースのルートエントリのパスを正しいパスに置き換えてください。

6. 次に、JBoss のデフォルトの .jar ファイルの 1 つに対して、Liferay のソースコードからパッチをインクルードする必要があります。 Liferayのソースをダウンロードしたら、ソースを一時フォルダに解凍します。 Liferay ソースの場所を $LIFERAY_SOURCEとして参照します。

7. 次にスタンドアロンモードを設定します。

  1. $JBOSS_HOME/standalone/configuration/standalone.xml. </extensions> タグと <management> タグの間に以下のシステムプロパティを追加します。
    <system-properties>
       <property name="org.apache.catalina.connector.URI_ENCODING" value="UTF-8" />
       <property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="true" />
    </system-properties>
    
  2. 以下の抜粋にあるように、 deployment-timeout="240" を設定して、デプロイメント スキャナのタイムアウトを追加します。
    <subsystem xmlns="urn:jboss:domain:deployment-scanner:1.1">
       <deployment-scanner deployment-timeout="240" path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000"/>
    </subsystem>
    
  3. 要素 <subsystem xmlns="urn:jboss:domain:security:1.2">で定義されたセキュリティサブシステム <security-domains> に次の JAAS セキュリティドメインを追加します。
    <security-domain name="PortalRealm">
       <authentication>
           <login-module code="com.liferay.portal.security.jaas.PortalLoginModule" flag="required" />
       </authentication>
    </security-domain>
    
  4. enable-welcome-root="false"を指定して、Web サブシステムの仮想サーバーデフォルトホストのウェルカムルートを無効にします。
    <subsystem xmlns="urn:jboss:domain:web:1.2" default-virtual-server="default-host">
       <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
       <virtual-server name="default-host" enable-welcome-root="false">
          <alias name="localhost" />
          <alias name="example.com" />
       </virtual-server>
    </subsystem>
    
  5. Web サブシステム要素 <subsystem xmlns="urn:jboss:domain:web:1.2" default-virtual-server="default-host" native="false">の中に、次の <configuration> 要素を挿入します。
    <configuration>
       <jsp-configuration development="true" />
    </configuration>
    

8. スタンドアロンドメインの設定スクリプトを変更する - $JBOSS_HOME/bin/standalone.conf (Windowsの場合はstandalone.conf.bat)

  1. Windowsでは、次の行に示すように、最初のJAVA_OPTSの割り当てをコメントアウトします。

    rem set JAVA_OPTS=Xms64M -Xmx512M -XX:MaxPermSize=256Mを設定します。

    そして、ファイルの最後にあるJAVA_OPTS_SET行の上に、次のJAVA_OPTSの割り当てを1行追加してください。 セット。

    JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Djava.security.manager -Djava.security.policy=server.policy- Djboss.home.dir=$JBOSS_HOME -Duser.timezone=GMT -Xmx1024m -XX:MaxPermSize=256m
  2. Unixでは、以下の値をJAVA_OPTSの設定にマージして、一致する属性を以下の代入で見つけたものに置き換えてください。
    JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Djava.security.manager -Djava.security.policy=server.policy -Djboss.home.dir=$JBOSS_HOME -Duser.timezone=GMT -Xmx1024m -XX:MaxPermSize=256m

9. フォルダ $JBOSS_HOME/modules/ibm/jdk/main を作成し、このフォルダ内にmodule.xmlファイルを作成して修正します。

10. 既存のmodule.xmlファイルを以下の内容で $JBOSS_HOME/modules/ibm/jdk/main/module.xml ファイルに置き換えます。

<?xml version="1.0"?>

<module xmlns="urn:jboss:module:1.1" name="ibm.jdk">
   <dependencies>
       <system export="true">
           <paths>
               <path name="com/ibm" />
               <path name="com/ibm/crypto/provider" />
               <path name="com/ibm/jvm" />
               <path name="com/ibm/jvm/io" />
               <path name="com/ibm/jvm/util" />
               <path name="com/ibm/match" />
               <path name="com/ibm/misc" />
               <path name="com/ibm/net" />
               <path name="com/ibm/nio" />
               <path name="com/ibm/nio/ch" />
               <path name="com/ibm/security/auth" />
               <path name="com/ibm/security/bootstrap" />
               <path name="com/ibm/security/auth/module" />
               <path name="com/ibm/security/util" />
               <path name="META-INF/services" />
           </paths>
       </system>
   </dependencies>
</module>

11. $JBOSS_HOME/modules/sun/jdk/main/module.xml ファイルに移動し、 <paths>... の中に以下のパス名を挿入します。</paths> 要素の中に以下のパス名を挿入します。

<path name="com/sun/crypto" />
<path name="com/sun/crypto/provider" />
<path name="com/sun/org/apache/xml/internal/resolver" />
<path name="com/sun/org/apache/xml/internal/resolver/tools" />

12. セキュリティ設定

Marketplace から他人のアプリを使い始める準備ができたら、ポータルと JBoss サーバーをセキュリティの脅威から保護することをお勧めします。 そのためには、JBoss サーバーで Java セキュリティを有効にし、セキュリティポリシーを指定して、サーバーへのポータルアクセスを許可します。

  • JBoss の設定セクションで先ほど standalone.conf.bat ファイルで -Djava.security.manager-Djava.security.policy Java オプションを設定したことを覚えておいてください。 -Djava.security.manager Java オプションは JBoss サーバーのセキュリティを有効にします。 同様に、 -Djava.security.policy Javaオプションは、サーバのJavaセキュリティポリシーのパーミッションを一覧表示します。 これらのオプションを設定していない場合は、Javaセキュリティを使用する前に設定する必要があります。
  • 今のところ、Liferayにサーバーへのアクセスを許可するために、すべての権限をオープンにしておきましょう。 ポリシー内のパーミッションを後で調整することができます。 $JBOSS_HOME/bin/server.policy ファイルを作成し、以下の内容を追加します。
  • grant {
       permission java.security.AllPermission;
    };

Java SE Security Architectureの詳細については、オラクルの サイトのJava SE Documentation にある仕様書を参照してください。 また、リソースへのポータル・プラグインのアクセスを設定する方法については、『Liferay's Developer's Guide』第12章の セクション の「プラグイン・セキュリティ管理について」を参照してください。

13. 新しいフォルダを作成 $JBOSS_HOME/standalone/deployments/ROOT.war.

14. Liferay .war ファイルを ROOT.war フォルダに解凍します。

15. ROOT.warのデプロイを起動するには、 $JBOSS_HOME/standalone/deployments/ フォルダに ROOT.war.dodeploy という名前の空のファイルを作成します。 起動時にJBossがこのファイルの存在を検出し、Webアプリケーションとしてデプロイします。

16. $JBOSS_HOME/standalone/deployments/ROOT から eclipselink.jar を削除します。war/WEB-INF/lib から、 eclipselink.jarで提供されているものではなく、Hibernateの永続化プロバイダが使用されていることを確認してください。

17. JBoss リポジトリから picketbox ライブラリ (JBoss 7.1.3 では 4.0.13) をアップデートする必要があります。

  1. 以下のリンクから入手できます。
  2. これらが得られたら、 $JBOSS_HOME\modulesorg\picketbox\mainにコピーします。
  3. $JBOSS_HOME\modulesorg\picketboxmain\modules.xml を以下のように修正します。
    <resources>
       <resource-root path="picketbox-4.0.15.Final.jar"/>
       <resource-root path="picketbox-infinispan-4.0.15.Final.jar"/>
       <resource-root path="picketbox-commons-1.0.0.final.jar"/>
       <!-- Insert resources here -->
    </resources>
    

18. JBoss アプリケーションサーバーを起動します。

19. ライセンスを展開します。

ポータルが使えるようになりました。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています