Включите перенаправление WADO URI-запросов для недоступных объектов в архиве на внешний архив.
Создайте Remote Application Entity для внешнего архива, а также создайте Web Application, ссылающееся на
WADO_URI как на Web Service Class. Web Service Path должен отражать URL-путь WADO-URI-сервиса, используемого
внешним архивом.
Альтернативно, если второй архив также является экземпляром архива DCM4CHEE, можно просто клонировать исходное устройство
архива dcm4chee-arc и изменить AET в Web Service Path и связанное поле AE Title в клонированных Web Applications.
Эта функция может быть настроена на : - уровне Archive Device — для перенаправления WADO-URI-запросов для недоступных объектов, полученных любой прикладной сущностью архива :
Перейдите в `Menu -> Configuration -> Devices -> dcm4chee-arc -> Device Extension -> Archive Device Extension`.
ИЛИ
уровне Application Entity — для перенаправления WADO-URI-запросов для недоступных объектов, полученных этой прикладной сущностью архива
Перейдите в Menu -> Configuration -> Devices -> dcm4chee-arc -> Child Objects -> DCM4CHEE -> Network AE Extension ->
Archive Network AE Extension.
Установите Fallback WADO-URI Web Application Name как имя веб-приложения (имеющего WADO-URI как Web Service Class)
внешнего архива. Также задайте Fallback WADO-URI HTTP Status Code. По умолчанию используется значение 303.
Допустимые значения: 301, 302, 303 и 307. Нажмите Save для сохранения этой конфигурации.
Можно либо создать LDIF-файл для добавления атрибутов либо на : - уровне Archive Device (напр.):
version: 1
dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: modify
add: dcmFallbackWadoURIWebAppName
dcmFallbackWadoURIWebAppName: DCM4CHEE-WADO_CLONE
dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: modify
add: dcmFallbackWadoURIHttpStatusCode
dcmFallbackWadoURIHttpStatusCode: 301
ИЛИ
version: 1
dn: dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: modify
add: dcmFallbackWadoURIWebAppName
dcmFallbackWadoURIWebAppName: DCM4CHEE-WADO_CLONE
dn: dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: modify
add: dcmFallbackWadoURIHttpStatusCode
dcmFallbackWadoURIHttpStatusCode: 301
и импортируйте его на LDAP-сервер с помощью утилиты командной строки ldapmodify.
ИЛИ используйте функцию Add Attribute... и Add Value... в Apache Directory Studio
для добавления атрибутов на уровне Device (напр.: dicomDeviceName=dcm4chee-arc) или на уровне Application Entity
(напр.: dicomAETitle=DCM4CHEE) в конфигурации архива.
Можно обратиться к Archive Device или Archive Network AE для понимания описания атрибутов.
curl -v -L 'http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=1.2.840.113674.1118.54.200&seriesUID=1.2.840.113674.1118.54.180.300&objectUID=1.2.840.113674.950809132646154.100&contentType=image/jpeg&frameNumber=1' > image.jpeg
* Expire in 0 ms for 6 (transfer 0x5632837115c0)
* Expire in 1 ms for 1 (transfer 0x5632837115c0)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 2 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Trying 127.0.0.1...
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x5632837115c0)
* Connected to localhost (127.0.0.1) port 8080 (#0)
> GET /dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=1.2.840.113674.1118.54.200&seriesUID=1.2.840.113674.1118.54.180.300&objectUID=1.2.840.113674.950809132646154.100&contentType=image/jpeg&frameNumber=1 HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 303 See Other
< Connection: keep-alive
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Headers: origin, content-type, accept, authorization
< Access-Control-Allow-Credentials: true
< Location: http://localhost:8780/dcm4chee-arc/aets/DCM4CHEE_CLONE/wado?requestType=WADO&studyUID=1.2.840.113674.1118.54.200&seriesUID=1.2.840.113674.1118.54.180.300&objectUID=1.2.840.113674.950809132646154.100&contentType=image/jpeg&frameNumber=1
< Content-Length: 0
< Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS, HEAD
< Date: Fri, 10 Apr 2020 14:02:14 GMT
<
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
* Connection #0 to host localhost left intact
* Issue another request to this URL: 'http://localhost:8780/dcm4chee-arc/aets/DCM4CHEE_CLONE/wado?requestType=WADO&studyUID=1.2.840.113674.1118.54.200&seriesUID=1.2.840.113674.1118.54.180.300&objectUID=1.2.840.113674.950809132646154.100&contentType=image/jpeg&frameNumber=1'
* Found bundle for host localhost: 0x563283710a90 [can pipeline]
* Could pipeline, but not asked to!
* Expire in 1 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 6 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 1 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Expire in 0 ms for 1 (transfer 0x5632837115c0)
* Trying 127.0.0.1...
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x5632837115c0)
* Connected to localhost (127.0.0.1) port 8780 (#1)
> GET /dcm4chee-arc/aets/DCM4CHEE_CLONE/wado?requestType=WADO&studyUID=1.2.840.113674.1118.54.200&seriesUID=1.2.840.113674.1118.54.180.300&objectUID=1.2.840.113674.950809132646154.100&contentType=image/jpeg&frameNumber=1 HTTP/1.1
> Host: localhost:8780
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Access-Control-Allow-Headers: origin, content-type, accept, authorization
< Date: Fri, 10 Apr 2020 14:02:14 GMT
< Connection: keep-alive
< Access-Control-Allow-Origin: *
< ETag: "1683502525"
< Last-Modified: Fri, 10 Apr 2020 13:47:14 GMT
< Access-Control-Allow-Credentials: true
< Transfer-Encoding: chunked
< Content-Type: image/jpeg
< Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS, HEAD
<
{ [16392 bytes data]
100 19169 0 19169 0 0 283k 0 --:--:-- --:--:-- --:--:-- 283k
* Connection #1 to host localhost left intact
Для перенаправления WADO-URI-запросов с использованием защищённых архивов убедитесь, что либо оба архива подключены к одному и тому же Keycloak, либо, если они подключены к разным Keycloak, они должны быть синхронизированы. См. Cluster Keycloak with MariaDB and LDAP using Docker Standalone