SeamFramework.orgCommunity Documentation
Seam does not work with JDK 1.4 and requires JDK 5 or above as it uses annotations and other JDK 5.0 features. Seam has been thoroughly tested using Sun's JDKs. However there are no known issues specific to Seam with other JDKs.
Sun の JDK 6 の旧バージョンには JAXB の非互換バージョンが含まれていたため "endorsed" ディレクトリを使って上書きする必要がありました。 Sun の JDK 6 Update 4 リリースは JAXB 2.1 にアップグレードされたのでこの必要性がなくなりました。 ビルド、 テスト、 実行などを行う際はこのバージョンまたはこれ以降のバージョンを使用してください。
Seam はそのユニットおよび統合のテストに JBoss Embedded を使用していました。 JDK 6 を使用する際はこれに追加して必要な事項があります。 JBoss Embedded を JDK 6 で実行するには、 次の JVM 引数をセットする必要があります。
-Dsun.lang.ClassLoader.allowArraySyntax=true
Seam のテストスィートを実行する場合、 Seam の内部ビルドシステムはデフォルトでこれを設定しています。 ただし、 テストに JBoss Embedded も使用する場合はこの値のセットが必要になります。
This section both lists the compile-time and runtime dependencies for Seam. Where the type is listed as ear
, the library should be included in the /lib directory of your application's ear file. Where the type is listed as war
, the library should be placed in the /WEB-INF/lib
directory of your application's war file. The scope of the dependency is either all, runtime or provided (by JBoss AS 4.2 or 5.0).
最新のバージョン情報および完全な依存性情報は本ドキュメントには含まれていませんが、 /dependency-report.txt
に記載されています。 これは /build
に格納される Maven POM で生成されます。 ant dependencyReport
を実行するとこのファイルを生成することができます。
表 42.1.
名前 |
範囲 |
タイプ |
注記 |
---|---|---|---|
|
all |
ear |
コアの Seam ライブラリで、 常に必要となります。 |
|
runtime |
war |
Seam のデバッグ機能を有効にするとき開発時に含めます。 |
|
runtime |
war |
Spring と Seam を併用する場合に必要となります。 |
|
runtime |
war |
Seam の PDF 機能を使用する場合に必要となります。 |
|
runtime |
war |
Seam の Microsoft® Excel® 機能を使用する場合に必要となります。 |
|
runtime |
war |
Seam の RSS 生成機能を使用する場合に必要となります。 |
|
runtime |
war |
Seam Remoting を使用する場合に必要となります。 |
|
runtime |
war |
Seam JSF コントロールの使用に必要となります。 |
|
provided |
JSF API | |
|
provided |
JSF リファレンス実装 | |
|
runtime |
war |
Facelets です。 |
|
runtime |
war |
URL Rewrite ライブラリです。 |
|
runtime |
ear |
Seam の非同期機能で Quartz を使用したい場合に必要となります。 |
表 42.2. RichFaces の依存性
名前 |
範囲 |
タイプ |
注記 |
---|---|---|---|
|
all |
ear |
RichFaces の使用に必要となります。 ツリーの作成などアプリケーションからの使用を可能にする API クラスを提供します。 |
|
runtime |
war |
RichFaces の使用に必要となります。 |
|
runtime |
war |
RichFaces の使用に必要となります。 all の UI コンポーネントを提供します。 |
表 42.3. Seam Mail の依存性
名前 |
範囲 |
タイプ |
注記 |
---|---|---|---|
|
runtime |
ear |
添付のサポートに必要となります。 |
|
runtime |
ear |
メール送信サポートに必要となります。 |
|
compile |
着信メールのサポートに必要となります。 mail-ra.rar はランタイムにアプリケーションに対してデプロイされなければなりません。 | |
|
runtime |
war |
Seam Mail のコアライブラリになります。 |
表 42.4. Seam PDF の依存性
名前 |
タイプ |
範囲 |
注記 |
---|---|---|---|
|
runtime |
war |
PDF ライブラリ |
|
runtime |
war |
チャートライブラリ |
|
runtime |
war |
JFreeChart で必要とされます。 |
|
runtime |
war |
Seam PDF のコアライブラリになります。 |
表 42.5. Seam Microsoft® Excel® の依存性
名前 |
タイプ |
範囲 |
注記 |
---|---|---|---|
|
runtime |
war |
JExcelAPI ライブラリです。 |
|
runtime |
war |
Seam Microsoft® Excel® のコアライブラリになります。 |
表 42.6. Seam RSS の依存性
名前 |
タイプ |
範囲 |
注記 |
---|---|---|---|
|
runtime |
war |
YARFRAW RSS ライブラリです。 |
|
runtime |
war |
JAXB XML 解析ライブラリです。 |
|
runtime |
war |
Apache HTTP Client のライブラリです。 |
|
runtime |
war |
Apache commons IO ライブラリです。 |
|
runtime |
war |
Apache commons 言語ライブラリです。 |
|
runtime |
war |
Apache commons codec ライブラリです。 |
|
runtime |
war |
Apache commons collections ライブラリです。 |
|
runtime |
war |
Seam RSS のコアライブラリです。 |
JBoss Rules のライブラリは Seam の drools/lib
ディレクトリにあります。
表 42.7. JBoss Rules の依存性
名前 |
範囲 |
タイプ |
注記 |
---|---|---|---|
|
runtime |
ear |
ANTLR 実行ライブラリ |
|
runtime |
ear |
Eclipse JDT ライブラリ |
|
runtime |
ear | |
|
runtime |
ear | |
|
runtime |
ear | |
|
runtime |
ear | |
|
runtime |
ear | |
|
runtime |
ear | |
|
runtime |
ear |
これらのライブラリは、 Seam アプリケーションで Google Web Toolkit (GWT) を使用したい場合に必要となります。
これらのライブラリは Seam アプリケーションで Spring Framework を使用したい場合に必要となります。
Maven は推移的依存性の管理に対するサポートを提供するため Seam プロジェクトの依存性管理に使用することができます。 Maven Ant Tasks を使って Maven を Ant のビルドに統合したり、 Maven を使ってプロジェクトのビルドおよびデプロイを行うこともできます。
ここでは Maven の使い方については触れませんが利用できる基本的な POM をいくつか見てみることにします。
Released versions of Seam are available in http://repository.jboss.org/maven2 and nightly snapshots are available in http://snapshots.jboss.org/maven2.
Seam の全アーティファクトは Maven にあります。
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam</artifactId>
</dependency
>
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam-ui</artifactId>
</dependency
>
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam-pdf</artifactId>
</dependency
>
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam-remoting</artifactId>
</dependency
>
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam-ioc</artifactId>
</dependency
>
<dependency>
<groupId
>org.jboss.seam</groupId>
<artifactId
>jboss-seam-ioc</artifactId>
</dependency
>
This sample POM will give you Seam, JPA (provided by Hibernate), Hibernate Validator and Hibernate Search:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.seam.example/groupId>
<artifactId>my-project</artifactId>
<version>1.0</version>
<name>My Seam Project</name>
<packaging>jar</packaging>
<repositories>
<repository>
<id>repository.jboss.org</id>
<name>JBoss Repository</name>
<url>http://repository.jboss.org/maven2</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>3.1.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.4.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search</artifactId>
<version>3.1.1.GA</version>
</dependency>
<dependency>
<groupId>org.jboss.seam</groupId>
<artifactId>jboss-seam</artifactId>
<version>2.2.0.GA</version>
</dependency>
</dependencies>
</project>