问题描述
我正在尝试进行概念验证以使用saxon xslt 3.0运行BizTalk地图 有一种方法可以使用自定义扩展(xml)扩展对象执行方法。
我正在跟踪此链接,但是执行 TestMap
时出现错误用于Saxon转换的扩展类Test.TestMethod无效,应为“ ExtensionFunction”或“ ExtensionFunctionDeFinition”
BizTalk Server 2020: A review of the new XSLT 3.0 & Custom Transform Features: Custom Engine Options(social.technet.microsoft.com)
自定义扩展xml
<ExtensionObjects>
<ExtensionObject Namespace="http://schemas.microsoft.com/BizTalk/2003/ScriptNS0" AssemblyName="Test,Version=1.0.0.0,Culture=neutral,PublicKeyToken=11f992b93de945f2,processorArchitecture=MSIL" ClassName="Test.TestMethod" /></ExtensionObjects>
自定义扩展xml文件中缺少任何内容吗? 我不确定这是怎么回事。
注意:在BizTalk 2020中部署应用程序后,在运行时出现相同的错误
解决方法
不需要添加扩展对象。 使用saxon xslt 3.0测试地图并运行作品,但是您无法从VS调试xslt。
执行以下操作:
- 转到
c:\Program Files (x86)\Microsoft BizTalk Server\Developer Tools\CustomTransform.xml
- 复制
TypeAssemblyQualifiedName
的值 - 打开regedit.exe并在以下注册表中创建一个字符串值“ XsltEngine”:
- 64位主机实例:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BizTalk Server\3.0\Configuration
- 32位主机实例:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\BizTalk Server\3.0\Configuration
- 将
TypeAssemblyQualifiedName
的值粘贴为值 - 重新启动服务器
如果您仍然需要帮助,请在MSDN Q&A Logic Apps论坛上发布请求。