gpt4 book ai didi

javascript - Mirth Connect 和 HL7 v3 消息验证

转载 作者:行者123 更新时间:2023-11-28 09:04:28 26 4
gpt4 key购买 nike

我正在使用 Mirth Connect(稳定版本)为 HL7v3 创建接口(interface)。我创建了一个接口(interface)来接收 PRPA_IN201305UV02 消息。

此时我想对传入的 XML 消息进行某种验证。经过一番搜索,我发现 HL7 有架构文件 (xsd) 来验证消息的正确性。

所以,我正在尝试对 xsd 文件实现验证。搜索 mirth 论坛,其中一位管理员发布了 link到用于 xml 验证的 java 库。

在我的 channel 源转换器中,我根据该链接编写了 javascript。

// parse an XML document into a DOM tree
var parser = Packages.javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder();
var document = parser.parse(msg);

当我收到消息时,最后一行代码出现错误

Wrapped java.net.MalformedURLException: no protocol

我也尝试过

var document = parser.parse(messageObject.getRawData());

但我遇到了同样的错误。

这里缺少什么?这是在 Mirth Connect 上进行 XML 验证的最佳方式吗?

谢谢

最佳答案

我找到了this回答

我将其转换为 Mirth 中的 Javascript

var schemaFile = new Packages.java.io.File("C:\\schema.xsd");
var url = new Packages.java.net.URL("file:C:\\input.xml");
var xmlFile = new Packages.javax.xml.transform.stream.StreamSource(url);
var schemaFactory = Packages.javax.xml.validation.SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
var schema = schemaFactory.newSchema(schemaFile);

var validator = schema.newValidator();

try {
validator.validate(xmlFile);
logger.info('valid');
} catch (err) {
logger.error(err.toString());
}

您需要从here下载JAXP(用于XML处理的Java API)

希望对其他人有帮助

关于javascript - Mirth Connect 和 HL7 v3 消息验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17319342/

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