synapse-core_2.1.7.wso2v182 找不到 HashiCorpVaultLookupXPathFunctionProvider

HashiCorpVaultLookupXPathFunctionProvider cannot be found by synapse-core_2.1.7.wso2v182

我目前正在使用 wso2 integration studio 8.0.0 开发服务,集成项目在我本地的 integration studio 运行时和本地 docker 引擎中都运行良好。但是,当我构建我的 docker 图像将其推送到 Kubernetes 集群时,pod 会引发错误

WARN {XpathExtensionUtil} - Error while initializing Synapse Xpath extension providers java.lang.ClassNotFoundException: org.wso2.micro.integrator.mediation.security.vault.external.hashicorp.HashiCorpVaultLookupXPathFunctionProvider cannot be found by synapse-core_2.1.7.wso2v182

我团队中的其他开发人员在他们的集成项目中没有遇到此错误。我们唯一能找到的区别是集成工作室的版本。 为了修复这个错误,我将 org.wso2.micro.integrator.mediation.security jar 文件放在我的 docker exporter libs 文件夹中。将我的 docker 图像部署到集群后,Pod 将其错误更改为

java.lang.abstractmethod” for axis2SynapseEnvironment.setXpathVariableExtensions.

我检查了 github 的源代码,但这似乎不是抽象方法。但是,它是 apache 文档中的摘要。我正在尝试解决这个问题,但无法解决,现在我的任务受阻了好几天。 如果您能指导我解决这个问题,我将不胜感激。集成工作室从哪条路径解决构建时的突触依赖性?应该使用哪个版本的突触核心来解决这个问题?

将 docker 基本图像更改为 wso2/wso2mi:4.0.0。您似乎在 Docker 容器中使用 Micro Integrator 1.2.0 运行时,请注意该功能在 1.2.0 GA 版本中不可用。请参考documentation.

请注意,Integration Studio v8.0.0 使用 wso2/wso2mi:4.0.0,Integration Studio v7.1.0v7.2.0 使用 wso2/wso2mi:1.2.0 作为 Docker 基础映像。

感谢您澄清突触核心版本和微集成版本之间的关系。我在集成工作室中将 docker 导出器配置为 wso2mi4.0.0,但我发现它在我的 jenkinsfile 中静态配置为 1.2.0(如您所述)。在更新 jenkinsfile 以使用集成工作室中我的 docker 导出器文件中的基本映像配置后,我成功部署了 pod。非常感谢您的帮助。