J2EEアプリケーションをデプロイしようとしています。私のアプリではCMPを使用したため、jbosscmp-jdbc.xmlファイルが必要です。ただし、アプリをJbossにデプロイしようとすると、次の例外が発生しました。
org.jboss.deployment.DeploymentException: Invalid XML:....
!/META-INF/jbosscmp-jdbc.xml; - nested throwable:
....
The content of element type "entity" must match "(ejb-name,datasource?,datasource-mapping?,create-table?,remove-table?,post-table-create?,read-only?,read-time-out?,row-locking?,pk-constraint?,read-ahead?,list-cache-max?,clean-read-ahead-on-load?,fetch-size?,table-name?,cmp-field*,load-groups?,eager-load-group?,lazy-load-groups?,query*,unknown-pk?,entity-command?,optimistic-locking?,audit?)".)
.......
Caused by: org.xml.sax.SAXParseException: The content of element type "entity" must match "....
これがjbosscmp-jdbc.xmlの内容です
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jbosscmp-jdbc PUBLIC
"-//JBoss//DTD JBOSSCMP-JDBC 4.0//EN"
"http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_4_0.dtd" >
<jbosscmp-jdbc>
<defaults>
<datasource>Java:/BeansDemoDB</datasource>
<datasource-mapping>MS SQLSERVER</datasource-mapping>
<create-table>false</create-table>
</defaults>
<enterprise-beans>
<entity>
<ejb-name>TUsers</ejb-name>
<table-name>T_Users</table-name>
<cmp-field>
<field-name>username</field-name>
<column-name>username</column-name>
</cmp-field>
<cmp-field>
<field-name>password</field-name>
<column-name>password</column-name>
</cmp-field>
<cmp-field>
<field-name>role</field-name>
<column-name>role</column-name>
</cmp-field>
</entity>
<entity>
<ejb-name>TStudents</ejb-name>
<table-name>T_Students</table-name>
<abstract-schema-name>TStudents</abstract-schema-name>
<cmp-field>
<field-name>studentID</field-name>
<column-name>studentID</column-name>
</cmp-field>
<cmp-field>
<field-name>studentName</field-name>
<column-name>studentName</column-name>
</cmp-field>
</entity>
</enterprise-beans>
</jbosscmp-jdbc>
Jboss 4と5の両方にデプロイしようとしましたが、同じエラーが発生しました。これをグーグルしようとしましたが、運がありません。jbosscmp-jdbc.xmlの何が問題になっていますか?