JBoss4 から JBoss5 への移行時に発生する問題を修正するためのヘルプを探しています。VFS の Hibernate サポートに問題があるようです (JBoss5 で導入)。
モジュール性の理由から、複数のアーティファクトには持続性ユニット (pu) 宣言があります。展開中に、それらすべてが次のような単一の宣言にマージされます
Processing PersistenceUnitInfo [
name: pu
persistence provider classname: null
classloader: org.jboss.web.tomcat.service.WebCtxLoader$ENCLoader@7a74fa
Temporary classloader: org.springframework.instrument.classloading.SimpleThrowawayClassLoader@432f0a33
excludeUnlistedClasses: false
JTA datasource: com.xyz.jdbc.datasource.DelegatingDataSource@4546bcba
Non JTA datasource: com.xyz.jdbc.datasource.DelegatingDataSource@4546bcba
Transaction type: JTA
PU root URL: vfszip:/<path>/<jar>/
Jar files URLs [
vfsfile:/<path>/<exploded jar>/
vfsfile:/<path>/<exploded jar>/
vfsfile:/<path>/<exploded jar>/
vfszip:/<path>/<jar>/
vfszip:/<path>/<jar>/
vfszip:/<path>/<jar>/]
Managed classes names []
Mapping files names []
Properties []
デバッグを有効にすると、展開された jar が注釈のためにスキャンされないことがわかります
[org.hibernate.ejb.packaging.AbstractJarVisitor] Searching mapped entities in jar/par: vfsfile:/<path>/<exploded jar>/
[org.hibernate.ejb.packaging.AbstractJarVisitor] Searching mapped entities in jar/par: vfsfile:/<path>/<exploded jar>/
一方、期待どおりにスキャンされたコンパクトな JAR
[org.hibernate.ejb.packaging.AbstractJarVisitor] Searching mapped entities in jar/par: vfszip:/<path>/<jar>/
[org.hibernate.ejb.packaging.AbstractJarVisitor] Filtering: com.xyz.batch.configuration.internal.impl.JobMetadataDocumentImpl$1$JobList
...
見つからなかったエンティティに対するクエリで QuerySyntaxException が発生する
org.hibernate.hql.ast.QuerySyntaxException: <EntityName> is not mapped