Я пытаюсь сделать мой проект jBPM постоянным. Поэтому я использовал этот tutorial. Сначала я импортировал все необходимые дополнительные банки (согласно веб-сайту). Я также добавил mysql-connector-java-5.1.20-bin.jar
, потому что я хочу использовать mysql как постоянное хранилище.jBPM Стойкость: невозможно построить EntityManagerFactory
После этого я добавил "с учетом состояния" код моего проекта:
KnowledgeBase kbase = readKnowledgeBase(name);
StatefulKnowledgeSession ksession = null;
JBPMHelper.startH2Server();
JBPMHelper.setupDataSource();
if(ProcessManager.sessionId == -1){
ksession = JBPMHelper.newStatefulKnowledgeSession(kbase);
ProcessManager.sessionId = ksession.getId();
}
else {
ksession = JBPMHelper.loadStatefulKnowledgeSession(
kbase,
ProcessManager.sessionId);
}
Затем я добавил к resources/META-INF
файл jBPM.properties
:
persistence.datasource.name = JDBC/jbpm-DS
persistence.datasource.user = тест
persistence.datasource.pas меч = тест
persistence.datasource.url = JDBC: MySQL: // локальный: 3306/HelpMe
persistence.datasource.driverClassName = com.mysql.jdbc.Driver
persistence.enabled = верно
persistence.persistenceunit.name = org.jbpm.persistence.jpa
persistence.persistenceunit.dialect = org.hibernate.dialect.MySQLDialect
Если я теперь запустить проект всегда есть следующее исключение (на ksession = JBPMHelper.newStatefulKnowledgeSession(kbase);
):
javax.persistence.PersistenceException: [PersistenceUnit: org.jbpm.persistence.jpa] Невозможно построить EntityManagerFactory
вызвано следующими причинами: org.hibernate.HibernateException: не удалось найти источник данных
Вызванный: javax.naming.NameNotFoundException: Имя JDBC не связан в этом контексте