- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当包含在 WAR 文件中的 JodaTime v. 2.5 库在 GF 5.0 中失败并出现以下错误时。似乎问题在于休眠验证器。 FutureValidatorForReadableInstant 未加载,因为 GF5.0 中的 hibernate-validator 包未加载 ReadableInstant,而它在 GF 4.1.2 中工作。
加载应用程序时出现异常:CDI 部署失败:Errornstantiating :org.hibernate.validator.cdi.internal.ValidationExtension
Caused by: java.lang.TypeNotPresentException: Type org.joda.time.ReadableInstant not present
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.repository.ClassRepository.getSuperclass(ClassRepository.java:90)
at java.lang.Class.getGenericSuperclass(Class.java:777)
at org.hibernate.validator.internal.util.TypeHelper.resolveTypeForClassAndHierarchy(TypeHelper.java:386)
at org.hibernate.validator.internal.util.TypeHelper.resolveTypes(TypeHelper.java:351)
at org.hibernate.validator.internal.util.TypeHelper.extractType(TypeHelper.java:327)
at org.hibernate.validator.internal.engine.constraintvalidation.ClassBasedValidatorDescriptor.(ClassBasedValidatorDescriptor.java:39)
at org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorDescriptor.forClass(ConstraintValidatorDescriptor.java:49)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at org.hibernate.validator.internal.metadata.core.ConstraintHelper.putConstraints(ConstraintHelper.java:686)
at org.hibernate.validator.internal.metadata.core.ConstraintHelper.(ConstraintHelper.java:386)
at org.hibernate.validator.internal.engine.ValidatorFactoryImpl.(ValidatorFactoryImpl.java:155)
at org.hibernate.validator.HibernateValidator.buildValidatorFactory(HibernateValidator.java:38)
at org.hibernate.validator.internal.engine.ConfigurationImpl.buildValidatorFactory(ConfigurationImpl.java:322)
at org.hibernate.validator.cdi.internal.ValidationExtension.(ValidationExtension.java:116)
... 78 more
最佳答案
我认为这可能是 Hibernate Validator 中的一个错误。我创建了 https://hibernate.atlassian.net/browse/HV-1490跟踪此问题。
当我们尝试在 ConstraintHelper 中检测 Joda Time 时,我们使用 LoadClass 机制,如果在 ConstraintHelper/HV CL 中找不到该类,该机制可能会回退到使用线程上下文类加载器。
在您的情况下,我认为 ReadableInstant 类可以在 TCCL 中访问,但不能在 HV CL 中访问。
当我们尝试从 ConstraintValidator 获取类型时,我们只有 HV CL,因此无法找到类。
所以我认为我们应该在 HV 中修复它,但我不确定它会帮助你,因为一旦修复,无论如何都不会启用 Joda 时间约束验证器。
可能无济于事的是,关于 Joda 时间依赖性 ( https://github.com/javaee/glassfish/blob/master/nucleus/packager/external/bean-validator/pom.xml#L124 ),HV 的 OSGi 包看起来有点过时。我会与 GlassFish 团队联系,看看他们是否可以更新它。
我创建了一个 PR https://github.com/hibernate/hibernate-validator/pull/857解决我们这边的问题。您可能能够获取此分支,构建它(它只是一个 mvn 全新安装)并升级 GlassFish 中的 jar。如上所述,它不允许您对 Joda 时间类型使用约束,但至少,您应该能够启动您的应用程序。如果您可以尝试,我对您的反馈很感兴趣。
关于 GF 部分,我给 GF 团队发了电子邮件,如果在这方面有一些进展,我会通知你。
更新:GF 5.0.1 将包含对此问题的修复。如果您将当前的 GF 升级到我们今天发布的 HV 6.0.3.Final,您应该能够启动您的应用程序(但无法对 Joda Time 类型施加限制,这将不得不等待 GF 5.0.1 )。
关于cdi - 当包含在 WAR 文件部署中的 JodaTime v. 2.5 库失败时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46604406/
我正在使用 JodaTime弄清楚当前是什么LocalDate是然后获得下一个星期一的日期。 当我使用以下方法并且当前日期是星期一时,它不是获取下一个星期一,而是获取当前日期。 private Loc
我不在乎它是 MST 还是 MDT,但我有一个带有时间的 LocalDateTime 对象(即没有时区)。我想添加 MST 或 MDT 并创建一个 DateTime 对象,以便我可以获得毫秒,因为存储
我有一个非常简单的 Spark 程序(在 Clojure 中使用 Flambo,但应该很容易理解)。这些都是 JVM 上的对象。我正在测试 local实例(尽管我猜测 Spark 仍然会序列化和反序列
这个问题已经有答案了: Is there a class in java.time comparable to the Joda-Time Interval? (4 个回答) 已关闭 7 年前。 Ja
我正在尝试http://www.epochconverter.com/我可以做 100 年,但是当我转到 99 年时,它似乎崩溃并报告 1999 而不是 0099。这是一个错误吗?纪元时间应该能够代表
我正在匹配诸如此类的事件 [Sun Jan 11 10:43:35 2015][3205.51466981] user idp : testing 10.234.22.220 (10.234.22.2
我在Hibernate 4中将jadira用户类型用于joda时间。我需要使用jvm日期时间进行存储和检索。问题是回读的日期有2个小时的偏移量。我们在UTC + 2上。日期已正确存储在数据库中。数据库
我正在尝试计算 Android 应用程序中任意两个给定时间之间的差异。为完成此任务,我使用了 JodaTime 和 Period 类以及 Period 的 getYears()、getDays()、g
我有这个 sql 查询和 Java 代码: select to_char(start_date, 'DD/MM/YYYY') AS start_date FROM table LogS
我想使用以下 MDX 语句: with member [x] as now()->plusMonths(1)->withDayOfMonth(1)->minusDay(1) select [x] on
我的应用程序正在使用 JodaTime 来管理日期解析和格式设置。 我有这个时间戳:2018-07-24T15:30:00-07:00。如何将其显示为下午 3:30,而不管用户身在何处? 最佳答案 以
这个问题已经有答案了: Find total hours between two Dates (11 个回答) 已关闭 3 年前。 我计算两个日期之间的时间差。一个来自数据库,另一个来自当前时间。 D
目前我有一个函数可以获取一天的开始时间和结束时间,并计算两者之间的差异,从而给出一天的工作时间。我想做的是能够获取 7 天的工作时间,并返回总计,同时保留显示格式 (HH:mm)。 我的单日总计函数:
当我从字符串中检索日期时,例如使用 Jodatime 格式化类的“Sat 11 Feb”: DateTimeFormatter formatter = DateTimeFormat.forPatter
我有一个让我很困惑的问题。首先,我将讲述我对从特定类实例化对象的了解。 我们通过声明类型(也可能是接口(interface)类型)、引用名称(变量)来创建类的实例(或对象),在等于运算符的另一侧我们使
我希望能够为下一次出现的时间获取正确的DateTime,我只需指定一小时和一分钟即可。我还希望能够通过在该小时和分钟指定相同的事情来做到这一点,但在(例如)星期三发生下一次发生的事情。 另外,请注意,
我得到了非常直接的DateConverter方法,可以将String转换为org.joda.time.DateTime public class DateConverter { private
与 JodaTime DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss'Z'").withZone(Da
这会引发无效格式异常: DateTimeFormat.forPattern("%E, %d %M %Y %H:%m:%s %z").parseMillis("Sun, 20 May 2012 01:0
请问我想计算两个日期之间的时间段,我搜索了但没有找到我需要的。我有这个代码: public int getNbjours() { DateTime dt1 = new DateTime
我是一名优秀的程序员,十分优秀!