无效的XML:在Jboss 4中部署时的jbosscmp-jdbc.xml?

时间:2011-08-26 00:19:23

标签: jboss cmp

我正在尝试部署我的J2EE应用程序。在我的应用程序中,我使用了CMP,因此需要jbosscmp-jdbc.xml文件。 Howerver,当我尝试在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出了什么问题?

1 个答案:

答案 0 :(得分:0)

发现我jbosscmp-jdbc.xml中的错误, 删除实体<abstract-schema-name>TStudents</abstract-schema-name>中的元素TStudents

感谢所有人阅读我的问题。