资源包含对 URL xxx 的外部引用,但此服务器未配置为允许外部引用
Resource contains external reference to URL xxx but this server is not configured to allow external references
在日志中看到这样的消息:
11 Apr 2022 12:40:25 -- ERROR -- Class: jdk.internal.reflect.GeneratedConstructorAccessor245, Method: newInstance, Error: HTTP 400 : HAPI-0507: Resource contains external reference to URL "http://web-fhir/fhir/Task/9589a07d-6022-4b57-afeb-c9149679eedc" but this server is not configured to allow external references
据我了解,它来自行
MethodOutcome outcome = fhirUtil.getFhirClient(localFhirStorePath).update().resource(taskBasedOnRemoteTask)
.execute();
我在日志中看到正在向 http://fhir.openelis.org:8080/fhir/Task/001a3df6-98c6-4c41-9ead-1387f55e4ecb
发出 PUT 请求
但是当我在邮递员中发出这个放置请求时,我得到
{
"resourceType": "OperationOutcome",
"text": {
"status": "generated",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h1>Operation Outcome</h1><table border=\"0\"><tr><td style=\"font-weight: bold;\">ERROR</td><td>[]</td><td><pre>HAPI-0449: Incorrect Content-Type header value of "FHIR" was provided in the request. A FHIR Content-Type is required for "UPDATE" operation</pre></td>\n\t\t\t</tr>\n\t\t</table>\n\t</div>"
},
"issue": [
{
"severity": "error",
"code": "processing",
"diagnostics": "HAPI-0449: Incorrect Content-Type header value of \"FHIR\" was provided in the request. A FHIR Content-Type is required for \"UPDATE\" operation"
}
]
}
我看到那些日志有前缀 HAPI 和编号。我在哪里可以找到有关这些错误含义以及如何解决它们的信息?
如何理解
““更新”操作需要 FHIR 内容类型”?
我已经添加了 FHIR 内容类型,为什么它仍然报错?
如何配置服务器以允许外部引用?
假设您使用的是 hapi jpastarter project. To allow external resources you have to change this line
“FHIR”无效 Content-Type。允许的内容类型在这里:http://build.fhir.org/http.html#mime-type
对于你来说,你需要使用 application/fhir+json
我的领导是如何解决这个问题的:docker-compose.yml fhir.someservice.org
中有一项服务
fhir.someservice.org:
image: "hapiproject/hapi:v5.6.0"
environment:
hapi.fhir.allow_external_references: "true"
我从服务代码中删除了其他代码,但只保留了他更改的内容 - 更改图像并使用此配置添加环境变量。我不知道为什么会这样,但它确实有效,也许对某些人有用。
也删除了
restart: always
和卷:和秘密:
但这些可能只是清理和无关紧要的。
在日志中看到这样的消息:
11 Apr 2022 12:40:25 -- ERROR -- Class: jdk.internal.reflect.GeneratedConstructorAccessor245, Method: newInstance, Error: HTTP 400 : HAPI-0507: Resource contains external reference to URL "http://web-fhir/fhir/Task/9589a07d-6022-4b57-afeb-c9149679eedc" but this server is not configured to allow external references
据我了解,它来自行
MethodOutcome outcome = fhirUtil.getFhirClient(localFhirStorePath).update().resource(taskBasedOnRemoteTask)
.execute();
我在日志中看到正在向 http://fhir.openelis.org:8080/fhir/Task/001a3df6-98c6-4c41-9ead-1387f55e4ecb
发出 PUT 请求但是当我在邮递员中发出这个放置请求时,我得到
{
"resourceType": "OperationOutcome",
"text": {
"status": "generated",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h1>Operation Outcome</h1><table border=\"0\"><tr><td style=\"font-weight: bold;\">ERROR</td><td>[]</td><td><pre>HAPI-0449: Incorrect Content-Type header value of "FHIR" was provided in the request. A FHIR Content-Type is required for "UPDATE" operation</pre></td>\n\t\t\t</tr>\n\t\t</table>\n\t</div>"
},
"issue": [
{
"severity": "error",
"code": "processing",
"diagnostics": "HAPI-0449: Incorrect Content-Type header value of \"FHIR\" was provided in the request. A FHIR Content-Type is required for \"UPDATE\" operation"
}
]
}
我看到那些日志有前缀 HAPI 和编号。我在哪里可以找到有关这些错误含义以及如何解决它们的信息?
如何理解
““更新”操作需要 FHIR 内容类型”?
我已经添加了 FHIR 内容类型,为什么它仍然报错?
如何配置服务器以允许外部引用?
假设您使用的是 hapi jpastarter project. To allow external resources you have to change this line
“FHIR”无效 Content-Type。允许的内容类型在这里:http://build.fhir.org/http.html#mime-type
对于你来说,你需要使用 application/fhir+json
我的领导是如何解决这个问题的:docker-compose.yml fhir.someservice.org
中有一项服务 fhir.someservice.org:
image: "hapiproject/hapi:v5.6.0"
environment:
hapi.fhir.allow_external_references: "true"
我从服务代码中删除了其他代码,但只保留了他更改的内容 - 更改图像并使用此配置添加环境变量。我不知道为什么会这样,但它确实有效,也许对某些人有用。
也删除了
restart: always
和卷:和秘密:
但这些可能只是清理和无关紧要的。