我有一个简单的项目使用QUUKUS 1.4.2。当我使用@Valid注释时,验证失败,状态为500,异常不会在控制台上显示。仅在Swagger UI中。我应该怎么做才能在控制台上打印出来?
@ApplicationScoped
public class ProductService {
public void validateProduct(@Valid Product product) {
}
}
正在发生的例外情况是:
javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint
错误是正确的。只是没有显示在控制台上。
如果我理解正确,您需要使用Validator
对象来捕获可能的异常:
@Inject
Validator validator;
public void validateProduct(Product product) {
// Should throw an error
Set<ConstraintViolation<Product>> violations = validator.validate(product);
if(violations.isEmpty()) {
return;
}
for (ConstraintViolation<Product> violation : violations) { // or log whole set as json
System.out.println(violation.toString()); //TODO prettify
}
throw new ValidationException(JsonbBuilder.create().toJson(violations));
}
如果您得到一个500错误,您现在可以捕获它并记录。
或者只需在您呼叫服务的位置捕获意外的类型异常
。这可能更好。
我希望这个错误会被记录下来,因为这肯定是一个可用性问题。我希望在我们收集Hibernate验证器元数据时,它会在启动时被记录,而不是每次调用。
您可以在此创建一个复制器并在Quarkus跟踪器中打开GitHub问题。
我会检查一下,看看有什么需要修理的。
我在SpringBoot api上工作,并使用具有以下属性设置的H2数据库。 当我想使用浏览器通过'http://localhost:8082/h2-console'查看H2数据库控制台时,浏览器中打开了一个带有连接和测试连接按钮的屏幕。当我单击Test Connection时,它返回成功,但当单击Connect按钮时,出现错误,即localhost拒绝连接。
问题内容: 从Python控制台显示或图片的最简单方法是什么? 我有一个Python控制台程序正在检查一个数据集,该数据集包含到本地存储的图像的链接。我应该如何编写脚本以便显示图像弹出的图形窗口? 问题答案: 使用很棒的枕头库: 这将在默认图像查看器中打开图像。
我正在测试带注释的javax验证。它们在应用程序中工作良好,方法参数上有注释。但是当我试图通过手动构建验证工厂来测试它们时 我得到以下错误。 javax。验证。ValidationException:HV000183:无法初始化“javax”。艾尔。“表达工厂”。检查类路径上是否有EL依赖项,或者改用ParameterMessageInterpolator 收到这个错误后,我在gradle文件中添
当然,对于GUI,除非运行我上面提到的命令,否则不会加载控制台,所以如果您有很多打印语句,它是否仍然影响程序的速度,它们是否仍然打印?(即使认为没有显示终端/控制台)