gpt4 book ai didi

java - 特定 Java EJB 约束违规错误。为什么?

转载 作者:行者123 更新时间:2023-12-02 07:14:06 25 4
gpt4 key购买 nike

我收到此错误:

    javax.ejb.EJBException: javax.validation.ConstraintViolationException: Validation
failed for classes [EntityBeans.PwVersions] during update time for groups
[javax.validation.groups.Default, ] List of constraint violations:
[ ConstraintViolationImpl{interpolatedMessage='size must be between 0 and 45',
propertyPath=directory, rootBeanClass=class EntityBeans.PwVersions, messageTemplate='{javax.validation.constraints.Size.message}'} ]

在运行时,我感到沮丧。当我尝试将查询结果转换为 PwVersions 对象时,会出现问题。我需要使用下面的代码行(或等效代码),所以我想知道我需要在其他地方更改什么(除了更改数据库之外)才能使其正常工作?也许有一种方法可以改变被违反的约束(我不熟悉在Java中处理约束)(主要/次要都是正确的)

PwVersions pwv= (PwVersions)em.createQuery("select pwv from PwVersions pwv where 
major= :major and minor = :minor").getSingleResult();

谢谢

最佳答案

验证异常很可能是由该注释引发的:

@javax.validation.constraints.Size(min = 0, max = 45)

放置在类EntityBeans.PwVersions的属性前面。要摆脱它,可以调整数据库表中字段的长度,或者调整 Size注释本身,以便匹配数据库字段的最大大小(或者如果您根本不需要注释,则删除注释)。

EJB 异常只是捕获验证异常并重新抛出它,因为您的代码片段放置在 EJB 中。

关于java - 特定 Java EJB 约束违规错误。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15164698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com