gpt4 book ai didi

java - 架构验证,如何显示用户友好的验证消息?

转载 作者:数据小太阳 更新时间:2023-10-29 02:07:31 26 4
gpt4 key购买 nike

有没有办法避免或设置一个模式来显示更好的用户友好消息?

我正在解析字符串并使用正则表达式来解释它们,但可能有更好的方法。

例。

"cvc-complex-type.2.4.b: The content of element 'node' is not complete. One of '{\"\":offer,\"\":links}' is expected."

Instead I want:

"The element 'node' is not complete. The child elements 'offer' and 'links' are expected."

同样,我通过创建一个额外的层来验证它来解决这个问题。但是当我必须使用带有架构验证的 XML 工具时,会显示加密消息。

谢谢

最佳答案

据我所知没有。您可能必须创建一些自定义代码来调整您的错误消息。一种方法可能是定义一组正则表达式,可以提取 validator 错误消息的相关部分,然后将它们重新插入到您自己的错误消息中。想到这样的事情(未优化,不处理一般情况等,但我想你会明白的):

String uglyMessage = "cvc-complex-type.2.4.b: The content of element 'node' is not complete. One of '{\"\":offer,\"\":links}' is expected.";

String findRegex = "cvc-complex-type\\.2\\.4\\.b: The content of element '(\\w+)' is not complete\\. One of '\\{\"\":(\\w+),\"\":(\\w+)}' is expected\\.";

String replaceRegex = "The element '$1' is not complete. The child elements '$2' and '$3' are expected.";

String userFriendlyMessage = Pattern.compile(findRegex).matcher(uglyMessage).replaceAll(replaceRegex);

System.out.println(userFriendlyMessage);
// OUTPUT:
// The element 'node' is not complete. The child elements 'offer' and 'links' are expected.

我怀疑这些 validator 错误消息是特定于供应商的,因此如果您无法控制已部署应用程序中的 XML validator ,这可能对您不起作用。

关于java - 架构验证,如何显示用户友好的验证消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1488953/

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