WSo2 ESB - 用于API和代理DSL源代码验证的XML XSD

时间:2016-03-16 00:16:54

标签: xml eclipse xsd wso2 wso2esb

WSo2 ESB, v4.8.1使用XML DSL作为平台用户构建的组件的实际源代码,这些组件的示例为SOAP ProxiesAPI's。我使用文本编辑器或Eclipse编辑这些源代码文件,然后使用Eclipse Maven构建来构建car file并将汽车文件部署到WSo2 ESB服务器。

目前,如果我在我的API源代码文件(实际上是一个XML文档)中出错,那么在将汽车文件部署到WSo2 ESB服务器上并且部署失败之前,通常不会检测到这一点。这个过程通常需要几分钟。

如果我的源代码中的错误导致我的XML源代码不是well formed XML,那么Eclipse将显示在UI中,我的汽车文件构建仍将继续进行。我想我需要在构建中添加一个格式良好的XML检查来处理它。

但是,如果错误导致我的XML源代码格式良好的XML,但WSo2 ESB DSL无效,则在汽车文件部署失败之前不会检测到此错误。

应该可以对API源代码文件执行XML XSD验证,以确定XML是否无效,早在汽车构建并将汽车部署到服务器之前。

我的问题:

  1. XML XSD是否可用于验证API和代理的源代码,如果是,

  2. 如何配置Eclipse以使用该XSD进行源代码的开发时间验证,实时突出显示代码中的错误。

  3. 也许,我认为这一切都错了,还有另一种方法可以改善我的构建过程/链。请指教。

  4. 为了完整性:

    1. 是的 - 我可以直接在服务器上编辑xml源代码 管理控制台,但它有自己的问题:
      • 它倾向于通过汽车文件打破未来的部署
      • 内置编辑器缺乏功能
      • 原生XML源和。之间存在一些转换 源在管理控制台中可见,例如HTTP和HTTPS 协议转换为" 1"和" 2"。
    2. 我没有使用Wso2 Eclipse图形化IDE模式,因为它有一系列问题使其无法工作,我确实在Eclipse中使用XML源视图。
    3. 我倾向于使用大量的试验和错误/迭代进行开发,并且我试图减少迭代时间。

      谢谢, 太

1 个答案:

答案 0 :(得分:2)

我或多或少采用相同的方法:不使用ESB Web控制台(因为例如,所有注释都丢失了),出于同样的原因不要使用Eclipse图形IDE。

因此,在您的情况下,我依靠XML编辑器来确保我的xml格式正确。

但是,在开发过程中,文件直接在正在运行的ESB(repository / deployment / server / synapse-configs / default)中编辑:

  • tail -f on wso2carbon.log告诉我文件是否有效
  • 我可以立即测试我的调解

当我的开发完成后,那些xml文件将被提交给svn(没有任何硬编码目录或URL)。

在您的情况下,我使用maven创建一个.car(带有maven-car-plugin),将在预生产和生产中部署。

使用xsd是一个好主意,但如果存在,我找不到它