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サンプル・アプリケーションを引き続き使います。
- ファイルシステムの適当な場所にHelloWorldディレクトリーを作成します。以降、この場所を<HelloWorld_home>と呼ぶことにします。
- <HelloWorld_home>ディレクトリーに HelloWorld.jsp という名前のファイルを作成し、以下の内容を貼り付けます。
Code Block |
---|
| XML |
---|
| XML |
---|
borderStyle | Solid |
---|
title | HelloWorld.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>
|
- <HelloWorld_home>配下に WEB-INF ディレクトリーを作成します。
- <HelloWorld_home>\WEB-INFディレクトリーに
web.xml
ファイルを作成し、以下の内容を貼り付けます。
Code Block |
---|
| XML |
---|
| XML |
---|
borderStyle | Solid |
---|
title | web.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>
|
- <HelloWorld_home>\WEB-INF ディレクトリーに
geronimo-web.xml
という名前のファイルを作成し、以下の内容を貼り付けます。
Code Block |
---|
| XML |
---|
| XML |
---|
borderStyle | Solid |
---|
title | geronimo-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 |
---|
|
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>タグにより定義された仮想ホストからのみアクセス可能である点にご注意ください。