小编Sah*_*sar的帖子

如何使用dropwizard实现@Auditable

我想用Dropwizard实现@Auditable。哪一个将创建* _audit表,并将详细信息与Revinfo表一起存储?

我正在将Dropwizard与Liquibase一起使用。

我在实体上添加了@Auditable

@Entity
@Table(name = "user_plan")
@Audited
public class UserPlan extends IdentityEntity
Run Code Online (Sandbox Code Playgroud)

并尝试更新抛出错误的表

 ! java.lang.AbstractMethodError: org.hibernate.envers.internal.synchronization.AuditProcessManager$2.doAfterTransactionCompletion(ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
! at org.hibernate.engine.spi.ActionQueue$AfterTransactionCompletionProcessQueue.afterTransactionCompletion(ActionQueue.java:975)
! at org.hibernate.engine.spi.ActionQueue.afterTransactionCompletion(ActionQueue.java:509)
! at org.hibernate.internal.SessionImpl.afterTransactionCompletion(SessionImpl.java:2472)
! at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.afterTransactionCompletion(JdbcCoordinatorImpl.java:479)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.afterCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:176)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$200(JdbcResourceLocalTransactionCoordinatorImpl.java:38)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.rollback(JdbcResourceLocalTransactionCoordinatorImpl.java:252)
! at org.hibernate.engine.transaction.internal.TransactionImpl.rollback(TransactionImpl.java:100)
! at io.dropwizard.hibernate.UnitOfWorkAspect.rollbackTransaction(UnitOfWorkAspect.java:144)
! at io.dropwizard.hibernate.UnitOfWorkAspect.onError(UnitOfWorkAspect.java:106)
! at io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.onEvent(UnitOfWorkApplicationListener.java:85)
! at org.glassfish.jersey.server.internal.monitoring.CompositeRequestEventListener.onEvent(CompositeRequestEventListener.java:71)
! at org.glassfish.jersey.server.internal.process.RequestProcessingContext.triggerEvent(RequestProcessingContext.java:226)
! at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:472)
! at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:334)
! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
! at …
Run Code Online (Sandbox Code Playgroud)

java hibernate hibernate-envers dropwizard

5
推荐指数
0
解决办法
78
查看次数

Sendgrid 无法附加多个文件且未显示错误代码

我在 Java 中使用 sendgrid 电子邮件。我正在尝试发送多个附件,但不知何故电子邮件丢失了 1 或 2 个文件。有时,所有附件都被发送。我也检查了状态码。每次都是202。这是不可预测的行为。谁能指出我是否遗漏了什么。

import com.sendgrid.*;
import com.sendgrid.Attachments.Builder;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;

import java.io.*;
import java.util.List;

public class SendGridUtils {
    private InputStream fileContent;
    private List<File> files;

    public boolean sendEmail() {

        try {
            String sendTo="sento@gmail.com";
            String subject="some_subject";
            String body="some_body";
            String sendGridAPIKey = "some_key";
            String fromEmail = "from@gmail.com";
            String emailTitle = "some_title";
            files.add(new File("abc.png"));
            files.add(new File("xyz.png"));
            files.add(new File("pqr.png"));
            files.add(new File("rty.png"));
            files.add(new File("ghj.png"));

            Email from = new Email(fromEmail, emailTitle);
            Email to = new Email(sendTo);
            Content content …
Run Code Online (Sandbox Code Playgroud)

java email-attachments sendgrid

5
推荐指数
1
解决办法
147
查看次数