Mule APIKit和多个RAML

时间:2015-11-16 23:12:49

标签: mule

在一个APIKit Mule项目中可以使用多个RAML文件吗?

假设我有两个函数/ api / func1和/ api / func2。 每个函数都在自己的raml - func1.raml和func2.raml中定义。 我使用API​​Kit向导在Anypoint中为第一个函数生成了一个流程。它工作正常。

现在,我正在尝试为第二个函数生成流程。生成的流程没有错误。但是,它只是不起作用。我已经尝试修复URL,绑定,配置,没有什么真的有帮助。 请注意,我不想将两个RAML绑定到一个文件中。原因是单独开发/维护功能更容易。

我能看到的唯一解决方案是定义两个独立的项目。但这不是我想要做的。

所以,寻找如何处理这种情况的建议。

谢谢,

2 个答案:

答案 0 :(得分:0)

好的,实际上,这是可能的。 您需要做的是使生成的流的HTTP连接器中的" Path"不同。

apikit向导会生成如下所示的默认路径:" / api / *"。

因此,Mule在尝试部署应用时会生成错误。你需要做的是改变路径到" / api / func1 / "和" / api / func2 / "

答案 1 :(得分:0)

您可以继续使用单个RAML文件并进行外部引用以简化您的raml,这是一个示例:

#%RAML 0.8

title: Eventlog API
version: 1.0
baseUri: http://eventlog.example.org/{version}

schemas:
  - eventJson: !include eventSchema.json
    eventListJson: !include eventlistSchema.json

通过严格的REST设计,建议在单个RAML文件中维护与资源相关的详细信息。

您可以选择修改网址以解决与上下文相关的任何冲突。