Не удается найти объявление элемента «постоянство»

у меня следующая настойчивость

Есть фрагмент кода:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence
EntityManagerFactory enfactory = Persistence.createEntityManagerFactory("ProcedimientosAlmacenados");
    EntityManager enmanager = enfactory.createEntityManager();
1.xsd"> <persistence-unit name="ProcedimientosAlmacenados"> <jta-data-source>java:/jdbc/DesaAppDS</jta-data-source> <properties> <property name="hibernate.show_sql" value="false" /> <property name="hibernate.format_sql" value="true" /> <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect" /> <property name="hibernate.hbm2ddl.auto" value="validate" /> <property name="hibernate.ejb.entitymanager_factory_name" value="ProcedimientosAlmacenados" /> <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform" /> <property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver"/> <property name="openjpa.TransactionMode" value="managed" /> <property name="openjpa.ConnectionFactoryMode" value="managed" /> <property name="openjpa.jdbc.DBDictionary" value="db2" /> <property name="eclipselink.jdbc.batch-writing" value="JDBC"/> </properties> </persistence-unit> </persistence>

вызывать постоянные подписки

EntityManagerFactory enfactory = Persistence.createEntityManagerFactory("ProcedimientosAlmacenados");
    EntityManager enmanager = enfactory.createEntityManager();

Я прыгаю со следующей ошибкой

Caused by: javax.persistence.PersistenceException: Invalid persistence.xml.
Error parsing XML (line-1 : column -1): cvc-elt.1: Cannot find the declaration of element 'persistence'.

Помоги мне, пожалуйста!!!


person William Morales    schedule 14.12.2015    source источник
comment
есть закрывающий тег для persistence ?   -  person corn3lius    schedule 14.12.2015


Ответы (2)


Ответ на этот вопрос был дан здесь

Это резюме. Проблема в том, что вы смешиваете нотацию JPA 2.0 и JPA 2.1.

Либо это

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
                                 http://xmlns.jcp.org/xml/ns/persistence/persistence
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
                      http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
  version="2.0">
1.xsd" version="2.1">

для JPA 2.1 или этого

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
                      http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
  version="2.0">

для JPA 2, но не их смесь.

См. http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/persistence/index.html для получения подробной информации.

person Carlos Laspina    schedule 14.12.2015
comment
что является желанием использовать JPA 2.1, я не нахожу разницы с моей настойчивостью - person William Morales; 14.12.2015
comment
можете ли вы помочь мне с чем-то более конкретным, пожалуйста, не сталкивайтесь с проблемой - person William Morales; 14.12.2015
comment
Я боролся с этим около половины дня, и ваш ответ помог, когда я указывал JPA 2.1, но оказалось, что Eclipse или аспект JPA хотели JPA 2.0 O_o - person JGlass; 21.10.2019

Ваше объявление пространства имен неверно.

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
             http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
             version="2.1">
    ...
</persistence>

источник: JSR-338

person SubOptimal    schedule 14.12.2015
comment
обзор и равен тому, что вы присылаете мне только изменить порядок - person William Morales; 14.12.2015
comment
@WilliamMorales Извините за ошибку. Incomplete скопировал вашу декларацию для сравнения. Может быть, вам лучше использовать JPA 2.0 вместо этого? Смотрите ответ от claspina. Какую версию спящего режима вы используете? JPA 2.1 поддерживается только версией ›= 4.3.11. - person SubOptimal; 14.12.2015