Nano Hash - криптовалюты, майнинг, программирование

jersey 2.x Проблема с JPA - org.hibernate.UnknownEntityTypeException: невозможно найти персистент

Мы внедряем Джерси 2.26 в наше приложение и сталкиваемся с проблемами с EntityManager. Мы используем JPA, а классы сохраняемости упакованы в отдельную банку.

Взял ссылку по ссылке ниже: - Как правильно ли настроить EntityManager в приложении jersey/hk2?

Мы можем запускать нативные запросы, например:

em.createNativeQuery("select employee_name from employee where employee_id = 2406")
  .getSingleResult();

Но

em.find(Employee.class,2406)

дает ошибку ниже: -

org.hibernate.UnknownEntityTypeException: невозможно найти сохраняющего:

persistence.xml

<persistence-unit name="TestPersistence" transaction-type="JTA">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <jta-data-source>java:jboss/datasources/TestPersistenceDS</jta-data-source>
    <properties>
        <property name="hibernate.cache.provider_class" 
                  value="org.hibernate.cache.NoCacheProvider" />
        <property name="hibernate.connection.driver_class" 
                  value="com.sybase.jdbc4.jdbc.SybDriver" />
        <property name="hibernate.dialect" 
                  value="org.hibernate.dialect.SybaseDialect" />

Сотрудник организации

@Entity
@Table(name = "employee")
public class Employee implements Serializable {

  private static final long serialVersionUID = 1L;

  @Id
  @Column(name = "emp_id")
  private Long empId;

  @Column(name = "emp_name")
  private String empName;

public Long getEmpId() {
    return empId;
}

public void setEmpId(Long empId) {
    this.empId = empId;
}

public String getEmpName() {
    return empName;
}

public void setEmpName(String empName) {
    this.empName = empName;
}

Любая помощь будет оценена по достоинству.

Примечание: не используйте maven или spring. приложение развернуто на wildfdly 11


  • не могли бы вы предоставить дополнительную информацию, пожалуйста. Как и исходный код класса Employee и файла persistence.xml. 27.11.2017
  • Спасибо, Саймон, поделился классом persistence.xml и Employee. 27.11.2017
  • Как получить EntityManager? Поскольку вы находитесь в WildFly, вы можете просто ввести его, как @PersistenceContext private EntityManager em; 27.11.2017

Ответы:


1

Мы используем JPA, а классы сохраняемости упакованы в отдельную банку.

Я думаю, вам нужно рассказать в файле persistence.xml о банке, где находятся энтиты, что-то вроде

...
<jta-data-source>java:jboss/datasources/TestPersistenceDS</jta-data-source>
<jar-file>../lib/a-separate.jar</jar-file>
...

ПРИМЕЧАНИЕ. В зависимости от среды выполнения путь может различаться, а также может потребоваться расширение объектов в банке.

28.11.2017
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..