无法解决raml文件错误

时间:2016-12-14 17:56:12

标签: mule anypoint-studio raml

我已经获得了在Mule中使用的附加RAML文件,但是我在解决如何清除文件中的错误时遇到问题,甚至不确定此raml文件是否符合标准。我得到的错误是缺少{}而另一个是删除版本时缺少块条目。无法弄清楚如何解决它们。

以下是RAML的缩减版本:

#%RAML 0.8
---
title: Databox
version: v1
protocols: [HTTPS]
baseUri: https://databox/v1/{version}
mediaType: application/json
traits:
  - http-data: !include http-data.raml
resourceTypes: !include types.raml

documentation:
  - title: Home
    content: |
      Databox 1st draft

/stores:
  type:
    store:
      description: Stores
      dataSchema: !include stores.json

特征(http-data.raml):

responses:
  200:
    description: |
      Success

resourceType(types.raml):

- store:
    head:
      description: Retrieve data for <<description>>.
      is: [ http-data ]
    get:
      description: Retrieve data for <<description>>.
      responses:
        200:
          body:
            application/json:
              schema: |
               {
                "type": "object",
                "properties": {
                  "meta": {
                    "title": "Data",
                    "type": "object",
                    "properties": {
                      "createdOn": {
                        "type": "string",
                        "format": "date-time"
                      }
                    },
                    "required": [
                      "createdOn"
                    ]
                  },
                  "data": {
                   "type": "array",
                   "items": <<dataSchema>>
                  }
                },
                "required": [
                  "data"
                ]
               }
          description: |
            Success. Returns a JSON object containing all <<description>>.

架构(stores.json):

{
  "id": "http://localhost:8000/stores.json#",
  "$schema": "http://json-schema.org/draft-04/schema",
  "title": "Databox Store Schema",
  "type": "object",
  "properties": {
    "storeId": {
      "type": "string"
    },
    "storeDescription": {
      "type": "string"
    },
  },
  "required": [
    "storeId"
  ],
  "additionalProperties": false
}

由于

1 个答案:

答案 0 :(得分:0)

RAML是有效的,除了json模式中使用的<<dataSchema>>参数,不确定这是否是对参数的有效使用。

我首先在stores.json中为json替换<<dataSchema>>,然后重试。

让我知道这是否有效或者你得到了什么错误。

更新:

Mulesoft的anypoint门户网站仅通过一次更改即可验证您的RAML,您可以看到它here