使用 HAPI FHIR 发布资源包

Posting Bundle of Resources using HAPI FHIR

我正在寻求有关如何 post 包含多个资源的包到 HAPI 服务器的帮助。我是 运行 [测试服务器][1],我已经尝试使用 Jetty 服务器和 运行 它作为 docker 容器。我能够成功启动服务器,直接转到UI和post一个病人。我还可以直接从 Postman 中 post 一位患者:

POST /hapi-fhir-jpaserver/fhir/Patient HTTP/1.1
Host: localhost:8080
Content-Type: application/fhir+json
{
  "resourceType": "Patient",
  "name": [
    {
      "use": "official",
      "family": "Solo",
      "given": [
        "Han"
      ]
    }
  ]

一切正常。但是,当我尝试 post 时:

{
  "resourceType": "Bundle",
  "type": "transaction",
  "entry": [
    {
      "resource": {
        "resourceType": "Patient",
        "name": [
          {
            "use": "official",
            "family": "Stark",
            "given": [
              "Anthony"
            ]
          }
        ]
      },
      "request": {
        "method": "PUT",
        "url": "Patient"
      }
    }
  ]
}

我收到“OperationOutcome”错误:“无法在此服务器上存储捆绑资源,其 Bundle.type 值为:事务”

我从网络 UI 和 post 人那里得到了这个错误。我可以将 Bundle 的类型更改为“消息”之类的类型,但不会出现相同的错误。但是,当我搜索时,虽然整个 Bundle 已经 posted,但里面的病人还没有。有谁知道如何让服务器独立于 Bundle 本身读取 Bundle 中的资源?

  [1]: https://github.com/hapifhir/hapi-fhir-jpaserver-starter

要执行事务或批处理,POST 它到服务器的 'root' 端点,而不是 Bundle 端点 - 所以 .../hapi-fhir-jpaserver/fhir,而不是 .../hapi-fhir-jpaserver/fhir/Bundle