Java copyProperties()在Tomcat上使用时抛出NullPointerException

Java copyProperties()在Tomcat上使用时抛出NullPointerException,java,hibernate,tomcat,nullpointerexception,apache-commons-beanutils,Java,Hibernate,Tomcat,Nullpointerexception,Apache Commons Beanutils,BeanUtils.copyProperties()throwNullPointerException在Tomcat上,但在本地主机上,它工作正常 我已经检查了所有内容,并且dto不是null,只有用户的属性是null,这很好 public void saveUser(UserDTO dto) { User user = new User(); BeanUtils.copyProperties(dto, user); session.beginTransaction()

BeanUtils.copyProperties()
throw
NullPointerException
在Tomcat上,但在本地主机上,它工作正常

我已经检查了所有内容,并且
dto
不是
null
,只有用户的属性是
null
,这很好

public void saveUser(UserDTO dto) {
    User user = new User();
    BeanUtils.copyProperties(dto, user);

    session.beginTransaction();
    session.save(user);
    session.getTransaction().commit();
}
my User.java

public class User {

    @Id @GeneratedValue
    private long id;

    private String userId;
    private String firstName;
    private String lastName;
    private String email;
    @Enumerated(EnumType.STRING)
    private Role role;
    private String encryptedPassword;
    private String salt;
    private String token;

... getters and setters method ...
}

错误是当BeanUtils试图从
用户
类复制
角色

private Role role;
它将尝试获取
角色
的属性(通过反射),但由于您的
角色
null
,因此会抛出NPE

复制时使用此方法忽略字段
角色

public static void copyProperties(Object source,
                              Object target,
                              String... ignoreProperties)

您应该发布您的用户类并告诉我们哪些字段为空。我的spidey感官告诉我查看这两个对象的getter和setter。但这只是猜测。我们需要更多的信息,谢谢