現在、ear アプリを開発しようとしており、jboss7.1.3 サーバーにデプロイしたいと考えています。
jboss maven テンプレートを使用して javaee6 ear アプリを作成し、javaee6 関連の依存関係のほとんどを次のものに置き換えました。
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
</dependency>
スタンダードにこだわったほうがいいと思ったからです。しかし、依存関係に seam-faces を追加すると、エラーがスローされました。
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS018045: Failed to load annotated class: org.jboss.seam.faces.component.UIViewAction
さらに掘り下げると、欠落しているクラスが明らかになりました。
Caused by: java.lang.NoClassDefFoundError: javax/faces/component/UIComponentBase
何故ですか?Maven アーキタイプによって提供される依存関係に固執する必要がありますか? 私の懸念は、Glassfish に移行したらどうなるかということです。