Я создал два Entity Bean, которые будут вставлять пользовательские данные в базу данных mysql при входе пользователя в систему и при выставлении счета пользователю.Я решил использовать Ebean ORM, так как он «легкий» только для вставки в стол.
Приложение представляет собой мыло cxf war на основе maven, развернутое на сервере приложений weblogic 12.2.1 и разработанное на eclipse 2019-06-R xxx.
В этих данных правильно работают модульные тестывставляется в тестовую базу данных, код также сохраняется в обычной базе данных при выполнении в главном классе в eclipse, и я не получаю эту локальную ошибку "bean not extended error ..."
Однако сгенерированныйВойна завершается неудачно с сообщением «ошибка компонента не улучшена ...» после установления соединения с базой данных (на основе журналов) в точке, где вызывается метод вставки компонента.
как я могу решить эту проблему?
Основываясь на официальном веб-сайте Ebean, я следовал этому руководству от настройки до конфигурации eclipse и maven:
- https://ebean.io/docs/getting-started/maven
- https://ebean.io/docs/setup/eclipse-apt
- https://ebean.io/docs/setup/enhancement
- https://ebean.io/docs/trouble-shooting
Предыдущие вопросы в основном направлены на игровую среду, которая неНе могу поговорить с моей проблемой, например:
https://groups.google.com/forum/#!topic/ebean/gdgGGVd0K5E
Я обновил мои pom.xml, application.yml и ebean.mf, как показано на примерах github:
https://github.com/ebean-orm/examples/tree/master/base-example
запустил mvn clean install в командной строке и повторно развернул, но все равно получает то же самое, хотя локально в модульных тестах и в основном классе java данные вставляются в базу данных
Установите и активируйтеПлагин Ebean Enhacer 11.x
журнал затмений:
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 46.453! MESSAGE ebean v11 + пакеты манифеста - сущность: [registration.audit.model] транзакция: [] querybean: [registration.audit.model]
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 48.990! MESSAGE ... EnhanceDebugLevel: 1
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44: 49.014! MESSAGE ... найден файл манифеста ebean
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.024! MESSAGE пакеты ebean v11 + манифест - сущность: [регистрация.audit.model] транзакция: [] querybean: [registration.audit.model, registration.audit.model]
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.038! MESSAGE ... ebean-extension> cls: регистрация / аудит / модель / Bill msg: улучшено
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.053! MESSAGEУлучшено: регистрация / аудит / модель / Билл
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.059! MESSAGE ... ebean-extension> cls: регистрация / аудит/ model / Login msg: расширенный
pom.xml:
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.12</version>
<extensions>true</extensions>
<configuration>
<tiles>
<tile>org.avaje.tile:java-compile:1.1</tile>
<tile>io.ebean.tile:enhancement:11.39.1</tile>
</tiles>
</configuration>
</plugin>
<dependency>
<groupId>io.ebean</groupId>
<artifactId>ebean</artifactId>
<version>11.38.1</version>
</dependency>
<!-- support for query beans -->
<dependency>
<groupId>io.ebean</groupId>
<artifactId>ebean-querybean</artifactId>
<version>11.38.1</version>
</dependency>
<!-- java annotation processor to generate query beans -->
<dependency>
<groupId>io.ebean</groupId>
<artifactId>querybean-generator</artifactId>
<version>11.38.1</version>
<scope>provided</scope>
</dependency>
ebean.mf:
entity-packages: za.gov.deeds.registration.audit.model
transactional-packages: za.gov.deeds.registration.service.audit
querybean-packages: za.gov.deeds.registration.service.audit
profile-location: true
application.yml:
datasource:
db:
username: xxxx
password:
url: jdbc:mysql://localhost:3306/db
driver: com.mysql.jdbc.Driver
dbName: db
Билл .java:
package registration.audit.model;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.TableGenerator;
import org.joda.time.DateTime;
import io.ebean.Model;
@Entity
@Table(name = "soap_user_billing")
public class Bill extends Model {
...
}
Логин .java:
package registration.audit.model;
import java.sql.Timestamp;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.TableGenerator;
import org.joda.time.DateTime;
@Entity
@Table(name = "login")
public class Login {
....
}
Вход в систему .java:
package registration.service.audit;
public class AuditService {
public void insertLoginAuditDetails(Login loginAuditBean) throws Exception {
EbeanServer server = EbeanServerFactory.create(getDBServerConfig());
log.info("DB Server: {}, ", server.getName());
server.insert(loginAuditBean);
Когда база данных находится в автономном режиме, EbeanServer выдает ошибку, связанную с подключением, которая составляет 100%, но когда база данных включена, компонент входа в систему не является«Выдается расширенная ошибка», хотя журналы затмений показывают следующее:
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.024! СООБЩЕНИЕ ebean v11 + пакеты манифеста - сущность: [регистрация.audit.model] транзакция: [] querybean: [registration.audit.model, registration.audit.model]
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:49.038! СООБЩЕНИЕ ... расширение бобов> cls: регистрация / аудит / модель / Bill msg: улучшено
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.053!СООБЩЕНИЕ улучшено: регистрация / аудит / модель / Билл
! ENTRY io.ebean.eclipse.enhancer 1 0 2019-06-26 10: 44: 49.059! MESSAGE ... ebean-extension> cls: регистрация /msg: расширенный