Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Anchor
top
top

Wiki Markup
{scrollbar}

1.4. Geronimo-Tomcatでの仮想ホストの構成 のセクションではGeronimoの config.xml に仮想ホストを定義し、アプリケーションのデプロイメント・プラン側での構成作業を最小にしつつアプリケーションを特定のホスト ( Virtual Hosts) にデプロイする方法を説明しました。このように仮想ホストをサーバー・レベル ( config.xml ) で定義する必要があるのはGeronimoのTomcatディストリビューションだけです。

Apache GeronimoのJettyディストリビューションでは構成作業は劇的に簡単になります。必要なのは、アプリケーションのデプロイメント・プランに <virtual-host> タグを定義して、そのホスト名 ( virtual host ) がクライアントから名前解決できることを確認するだけです。Geronimoサーバーの側ではそれ以外の追加の構成作業は必要ありません。

この例では 5. クイック・スタート - いますぐ始めたい人の Apache Geronimo セクションで使ったHelloWorld Webサンプル・アプリケーションを引き続き使います。

  1. ファイルシステムの適当な場所にHelloWorldディレクトリーを作成します。以降、この場所を<HelloWorld_home>と呼ぶことにします。
  2. <HelloWorld_home>ディレクトリーに HelloWorld.jsp という名前のファイルを作成し、以下の内容を貼り付けます。
Code Block
XML
XML
borderStyleSolid
titleHelloWorld.jsp
<html>
    <head>
        <jsp:useBean id="datetime" class="java.util.Date"/>
        <title>Basic HelloWorld JSP</title>
    </head>
    <body bgcolor="#909DB8">
        <h1><font face="tahoma" color="white">Hello world from GERONIMO!</font></h1>
        <font face="tahoma" color="white">on ${datetime}</font>
    </body>
</html>
  1. <HelloWorld_home>配下に WEB-INF ディレクトリーを作成します。
  2. <HelloWorld_home>\WEB-INFディレクトリーに web.xml ファイルを作成し、以下の内容を貼り付けます。
Code Block
XML
XML
borderStyleSolid
titleweb.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"

   xmlns="http://java.sun.com/xml/ns/j2ee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <welcome-file-list>
         <welcome-file>HelloWorld.jsp</welcome-file>
    </welcome-file-list>

</web-app>
  1. <HelloWorld_home>\WEB-INF ディレクトリーに geronimo-web.xml という名前のファイルを作成し、以下の内容を貼り付けます。
Code Block
XML
XML
borderStyleSolid
titlegeronimo-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.2">
        <environment>
                <moduleId>
                        <groupId>sample.applications</groupId>
                        <artifactId>HelloWorldApp</artifactId>
                        <version>2.0</version>
                        <type>war</type>
                </moduleId>
        </environment>
        <context-root>/hello</context-root>

        <!-- Add this line to define a new Virtual Host in Geronimo - Jetty  -->
        <virtual-host>virtualhost1.com</virtual-host>
</web-app>

このデプロイメント・プランを 5. クイック・スタート - いますぐ始めたい人の Apache Geronimo セクションで説明したデプロイメント・プランと比較すると、両者の違いは <virtual-host>virtualhost1.com</virtual-host> という一行だけであることに気付かれることでしょう。Jetty版のGeronimoで仮想ホストを定義するために必要なことは、これですべてです。

このアプリケーションをデプロイする際には、プロイヤー・ツールで --inPlace オプションを使えます。そうすれば、アプリケーションをパッケージする必要はありませんし、別のどこかにコピーする必要もありません。下記のコマンドを実行するだけです。

<geronimo_home>\bin\deploy --user system --password manager deploy --inPlace <HelloWorld_home>

No Format
borderStylesolid
D:\geronimo-jetty6-jee5-2.0-M2\bin>deploy --user system --password manager deploy --inPlace \HelloWorld_2.0
Using GERONIMO_BASE:   D:\geronimo-jetty6-jee5-2.0-M2
Using GERONIMO_HOME:   D:\geronimo-jetty6-jee5-2.0-M2
Using GERONIMO_TMPDIR: D:\geronimo-jetty6-jee5-2.0-M2\var\temp
Using JRE_HOME:        C:\Java\jdk1.5.0_06\\jre
    Deployed sample.applications/HelloWorldApp/2.0/war @
    http://hcunico:8080/hello

デプロイが成功すると、アプリケーションが http://XYZ:8080/hello というホストにデプロイされたとのメッセージが画面に表示されますが、実際は該当のアプリケーションはgeronimo-web.xmlというデプロイメント・プラン中で<virtual-host>タグにより定義された仮想ホストからのみアクセス可能である点にご注意ください。