我创建了两个实体Beans,它将在用户登录和用户计费时将用户数据插入mysql数据库。我决定使用Ebean,因为它只是一个表插入的“轻量级”。
该应用程序是部署到weblogic 12.2.1应用服务器并在Eclipse2019-06-Rxxx上开发的基于maven的soap。
单元测试工作正常,因为数据被插入到测试数据库中,当在eclipse的主类中执行时,代码也会持久化到正常的数据库中,而我没有得到这个"bean没有增强的错误.“。本地
但是,生成的war由于"bean未增强错误.“而失败。在调用bean的insert方法时(基于日志)建立到数据库的连接之后。
我怎么解决这个问题?
基于Ebean的官方网站,我遵循了从安装到eclipse和maven配置的本教程:
以前的问题大多是针对游戏框架的,它不涉及我的问题,例如:
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干净安装并重新部署,但是即使在本地单元测试和java主类上仍然得到相同的数据,数据也被插入到数据库中。
安装并启用Ebean Enhacer 11.x插件
日食日志:
!输入io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:46.453!消息ebean v11+清单包-实体: registration.audit.model事务性:[] querybean: registration.audit.model
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:48.990 .增强-:1
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:49.014 .找到ebean清单文件
!输入io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:49.024!消息ebean v11+清单包-实体: registration.audit.model事务性:[] querybean: registration.audit.model,registration.audit.model
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:49.038 .ebean-增强> cls:注册/审计/模型/Bill msg:增强
!输入io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:49.053消息增强:注册/审核/模型/条例草案
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:49.059 .ebean-增强> cls:注册/审计/模型/登录消息:增强
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: trueapplication.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%,但当数据库打开时,抛出一个"Login未增强的错误“,尽管eclipse日志显示了以下内容:
!输入io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:49.024!消息ebean v11+清单包-实体: registration.audit.model事务性:[] querybean: registration.audit.model,registration.audit.model
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:49.038 .ebean-增强> cls:注册/审计/模型/Bill msg:增强
!输入io.ebean.eclipse.enhancer 1 0 2019-06-26 10:44:49.053消息增强:注册/审核/模型/条例草案
!输入io.ebean.eclipse.enhancer 1 2009-06-26 10:44:49.059 .ebean-增强> cls:注册/审计/模型/登录消息:增强
发布于 2019-07-09 16:11:46
我设法通过如下编辑mvn pom.xml文件来解决这个问题:
<pluginManagement>
<plugins>
<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.38.1</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</pluginManagement> 如下所示,外部财阀管理:
<plugins>
<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.38.1</tile>
</tiles>
</configuration>
</plugin>
</plugins>然后我运行"mvn干净安装“并部署到WebLogic12.2,没有问题。
https://stackoverflow.com/questions/56770521
复制相似问题