Skip to content

Commit 19c4695

Browse files
committed
Update dcm4chee
1 parent 6c87037 commit 19c4695

File tree

5 files changed

+129
-58
lines changed

5 files changed

+129
-58
lines changed

.github/workflows/hugo.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
build:
3333
runs-on: ubuntu-latest
3434
env:
35-
HUGO_VERSION: 0.145.0
35+
HUGO_VERSION: 0.152.2
3636
HUGO_GH_TOKEN: ${{ secrets.HUGO_GH_TOKEN }}
3737
steps:
3838
- name: Install Hugo CLI
@@ -42,7 +42,7 @@ jobs:
4242
- name: Install Dart Sass
4343
run: sudo snap install dart-sass
4444
- name: Checkout
45-
uses: actions/checkout@v4
45+
uses: actions/checkout@v5
4646
with:
4747
submodules: recursive
4848
fetch-depth: 0

content/basics/customize/integration.en.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,11 @@ Configuration notes:
156156
- From 5.24.0 {{qidoBaseURL}} must be replaced by your base URL (e.g. https://pacs2.test.com:8443)
157157
- The character '&' must be escaped in the Docker environment variables.
158158
- The Authorization header is not required for unsecure service.
159-
- URL with HTTPS requires a real valid certificate; otherwise, the certificate must be imported into the Weasis Java keystore. For testing purposes in secure mode, you can use the HTTP URL if it is mapped in the OIDC client of keycloack (--url "http://<your-host>:8080/dcm4chee-arc/aets/DCM4CHEE/rs").
159+
- URL with HTTPS requires a real valid certificate; otherwise, the certificate must be imported into the Weasis Java keystore or must be installed at [system level](https://github.com/nroduit/Weasis/issues/679) (from Weasis 4.6.1).
160160
{{% /notice %}}
161161

162162
{{% notice note %}}
163-
Known issue: Weasis cannot open the images because of the token length which is cut by IE and Chrome only under Windows. It is working with Firefox on Windows.
163+
**Known issue on Windows**: Weasis cannot open the images because of the token length which is cut by the browser. It is only working with Firefox on Windows. It is recommended to use [weasis-pacs-connector](#use-weasis-pacs-connector) or [ViewerHub](../../../viewer-hub) to solve this issue.
164164
{{% /notice %}}
165165

166166
### Orthanc WEB Server
Lines changed: 121 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,30 @@
11
---
22
title: Embedding in dcm4chee
3-
description: How installing Weasis to be the default web viewer of dcm4chee web interface
3+
description: How to install and configure Weasis as the default web viewer in the dcm4chee web interface
44
keywords: [ "dcm4chee", "dcm4chee web" , "dcm4chee integration", "dcm4chee viewer", "dicom viewer", "free dicom viewer", "open source dicom viewer", "weasis dicom viewer", "multi-platform dicom viewer", "dicom", "pacs", "pacs viewer" ]
55
weight: 10
66
---
77

8-
This page describes how installing Weasis to be the default web viewer of dcm4chee-arc-light web interface. See [How to launch Weasis from any environments](../../basics/customize/integration) to integrate Weasis into your own user interface.
8+
This page explains how to integrate Weasis with dcm4chee-arc-light using weasis-pacs-connector. To launch Weasis without the connector, follow the alternative [instructions](../../basics/customize/integration/#download-directly-with-dicomweb-restful-services).
99

10-
Weasis is launched from the dcm4chee administrative web interface with the [weasis protocol](../weasis-protocol), as shown in the pictures below.
1110

1211
![dcm4chee-arc-light](/gallery-dcm4chee/1Weasis%20in%20dcm4chee-arc-light.png?classes=border "dcm4chee-arc-light")
1312

14-
For a simpler and faster installation without server components, please follow these [instructions](../../basics/customize/integration/#download-directly-with-dicomweb-restful-services); no need to consider the following points on this page. Otherwise, if you need more advanced configurations, then follow these steps:
13+
Follow these steps for the integration with `weasis-pacs-connector`:
14+
1515

1616
1. [Install dcm4chee](https://github.com/dcm4che/dcm4chee-arc-light/wiki), if not already done (Installation with Docker is straightforward).
1717

18-
2. Go [here](https://sourceforge.net/projects/dcm4che/files/Weasis/) and download these following files:
19-
{{% notice warning %}}
20-
**Download issue**: Some browsers (like Internet Explorer) may rename war files to zip. If so, use the Save As option when downloading and change the name back to war.
21-
{{% /notice %}}
22-
- From weasis-pacs-connector folder:
23-
- [weasis-pacs-connector.war] Requires at least the version 7.1.2
24-
- From the folder with the latest version number (Optional if you want to run only the [native version](../) installed on the client system):
25-
- [weasis.war] requires at least Weasis 3.5.3
26-
- {{% badge style="info" %}}Optional{{% /badge %}} [weasis-i18n.war] for [internationalization](../translating)
27-
- {{% badge style="info" %}}Optional{{% /badge %}} [weasis-ext.war] for [additional plugins](../../basics/customize/build-plugins/)
28-
- From the folder with the latest version number:
29-
30-
3. Open the <a target="_blank" href="http://localhost:9990/">wildfly management console</a> (at `http://<your-host>:9990`).
18+
2. Go [here](https://sourceforge.net/projects/dcm4che/files/Weasis/) and download `weasis-pacs-connector.war` — See [Configuration Matrix](#configuration-matrix) below for the recommended version according to your dcm4chee-arc-light version.
19+
20+
3. Open the <a target="_blank" href="http://localhost:9990/">WildFly management console</a> (at `http://<your-host>:9990`). Note: with some Keycloak versions, the [management console may not be accessible](https://groups.google.com/g/dcm4che/c/UeNKzgijfqo).
3121
- Select the “Deployments” tab
32-
- Add the .war files using the “Add” button (Choose Upload a new deployment or select Replace when the file already exists)
22+
- Add `weasis-pacs-connector.war` using the “Add” button (Choose Upload a new deployment or select Replace when the file already exists)
3323
{{% notice note %}}
34-
Alternatively one may deploy .war files using JBoss Command Line Interface Console.
24+
Alternatively one may deploy the `.war` using JBoss Command Line Interface Console.
3525
{{% /notice %}}
3626

37-
4. Configure weasis-pacs-connector (This step is optional if you just want to keep the default configuration).<br>
27+
4. Configure weasis-pacs-connector (optional if default settings are sufficient).<br>
3828
The default configuration is stored in two files inside weasis-pacs-connector.war. To override the default configuration:
3929
- Download the current [download>weasis-pacs-connector.properties](https://raw.githubusercontent.com/nroduit/weasis-pacs-connector/master/src/main/resources/weasis-pacs-connector.properties) and [download>dicom-dcm4chee-arc.properties](https://raw.githubusercontent.com/nroduit/weasis-pacs-connector/master/src/main/resources/dicom-dcm4chee-arc.properties) (configuration of the dcm4chee archive)
4030
- Edit the configuration as needed. For example, dcm4chee may be running on a different computer than Weasis, or the AE Title of dcm4chee may have been changed. If so, edit `weasis-pacs-connector.properties` or `dicom-dcm4chee-arc.properties` (Change pacs.host, pacs.port, and pacs.aet).
@@ -46,45 +36,127 @@ Instead of copying the files into $WILDFLY_HOME/standalone/configuration, JBoss
4636
{{< highlight bash >}}
4737
deployment-overlay add --name=dcm4chee-arc --deployments=weasis-pacs-connector.war --content=WEB-INF/classes/weasis-pacs-connector.properties=/tmp/weasis-pacs-connector.properties,WEB-INF/classes/dicom-dcm4chee-arc.properties=/tmp/dicom-dcm4chee-arc.properties --redeploy-affected
4838
{{< /highlight >}}
49-
- For applying the new configuration, from the management console "Disable" weasis-pacs-connector.war and then "Enable"
50-
51-
5. To activate Weasis in the dcm4chee-arc-light user interface (see the matrix of the required versions in the table below):
52-
you need to add attributes by either editing docker-compose.env (from 5.22.0) or from the left menu Configuration > Devices > dcm4chee-arc > Extensions > Edit extension > Child Objects > Web Applications > DCM4CHEE (add `&cdb` to the URL if weasis.war has not been deployed on the server-side):
53-
- Configure the URL for having a view button for the patient or study level.
54-
- From dcm4chee-arc-light 5.10.2 to 5.19.0, the left menu Configuration > Devices > dcm4chee-arc > Extensions > Archive Device
55-
- From dcm4chee-arc-light 5.19.1 the left menu Configuration > Devices > dcm4chee-arc > Extensions > Edit extension > Child Objects > Web Applications > DCM4CHEE
56-
- From dcm4chee-arc-light 5.22.0 by editing docker-compose.env (It allows you to directly apply the properties when deploying, then they can be edited in the web portal). Note: the character ‘&’ must be escaped (e.g., IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}\\&access_token={{access_token}})
39+
- To apply the new configuration, from the management console "Disable" `weasis-pacs-connector.war` then "Enable"
40+
41+
5. To activate Weasis in the dcm4chee-arc-light user interface (See also [Invoke Image Display in dcm4chee](https://github.com/dcm4che/dcm4chee-arc-light/wiki/Invoke-Image-Display)):
42+
you need to add attributes by either editing `docker-compose.env` (from 5.22.0) or from the left menu Configuration > Devices > dcm4chee-arc > Extensions > Edit extension > Child Objects > Web Applications > DCM4CHEE:
43+
- Configure the URL for a view button at patient or study level and then copy the properties from [Configuration Matrix](#configuration-matrix).
44+
- From dcm4chee-arc-light 5.10.2 to 5.19.0, the left menu: Configuration > Devices > dcm4chee-arc > Extensions > Archive Device
45+
- From dcm4chee-arc-light 5.19.1 the left menu: Configuration > Devices > dcm4chee-arc > Extensions > Edit extension > Child Objects > Web Applications > DCM4CHEE
46+
- From dcm4chee-arc-light 5.22.0 by editing `docker-compose.env` (allows applying properties at deploy time). Note: the character `&` must be escaped (e.g., `IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}\\&access_token={{access_token}}`)
5747
{{% notice note %}}
5848
**URL parameters**
5949

6050
- `access_token` is necessary in secure mode (secured RESTful services) from dcm4chee-arc-light 5.15.1
61-
- `_self` avoids to open a new empty window in the web browser<br>
62-
- `cdb` [cdb parameter](https://nroduit.github.io/en/getting-started/weasis-protocol/#modify-the-launch-parameters) to override the URL of the Weasis web context to null (when you want only the native local version or when weasis.war has not be deployed with weasis-pacs-connector)<br>
63-
- See also <a target="_blank" href="https://github.com/dcm4che/dcm4chee-arc-light/wiki/Invoke-Image-Display">Invoke Image Display in dcm4chee</a>
64-
{{% /notice %}}
65-
{{% notice tip %}}
66-
**Absolute path**: The values above starting by "../" are the default relative path when weasis-pacs-connector is installed in the same JBoss as dcm4chee. Otherwise replace the relative URL by an absolute value, ex: `http://<your-host>:<port>/weasis-pacs-connector/...`
51+
- `_self` avoids opening a new empty window in the browser<br>
6752
{{% /notice %}}
6853
- {{% badge style="info" %}}Optional{{% /badge %}} Add <a target="_blank" href="https://github.com/nroduit/weasis-pacs-connector#launch-weasis-with-other-parameters">other properties</a> in the URL.
6954
- Refresh the web page and the view button should appear as in the screenshot above
7055
- To launch the viewer from the web portal, the client computer must have installed the [Weasis package](../).
7156

72-
<font size="-1">
57+
## Configuration Matrix
58+
59+
{{% notice note %}}
60+
The list below maps dcm4chee-arc-light versions to the recommended `weasis-pacs-connector`, and gives the properties to add in dcm4chee-arc-light configuration to enable Weasis launching.
61+
62+
Older versions pass _self via query parameter (target=_self); newer versions (5.22.2+) use the dedicated property IID_URL_TARGET=_self.
63+
{{% /notice %}}
64+
65+
### dcm4chee-arc-light 5.10.2 to 5.19.0
66+
67+
{{% badge style="info" title="weasis-pacs-connector" %}}7.x{{% /badge %}}
68+
69+
#### Unsecured Mode
70+
<div style="font-size: 0.80em;">
71+
72+
* `../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self`
73+
* `../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self`
74+
75+
</div>
76+
77+
#### Secured Mode (from 5.15.1)
78+
<div style="font-size: 0.80em;">
79+
80+
* `../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self&access_token={}`
81+
* `../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self&access_token={}`
82+
83+
</div>
84+
85+
---
86+
87+
### dcm4chee-arc-light 5.19.1 to 5.22.1
88+
89+
{{% badge style="info" title="weasis-pacs-connector" %}}7.x{{% /badge %}}
90+
91+
#### Unsecured Mode
92+
<div style="font-size: 0.80em;">
93+
94+
* `IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self`
95+
* `IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self`
96+
97+
</div>
7398

74-
| Mode | dcm4chee version | Configuration |
75-
| ---- | ---------------- | --------------|
76-
| Unsecured | from 5.10.2 to 5.19.0 | ../../weasis-pacs-connector/weasis?&patientID={}&target=_self<br>../../weasis-pacs-connector/weasis?&studyUID={}&target=_self |
77-
| Unsecured* | from 5.10.2 to 5.19.0 | ../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self<br>../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self |
78-
| Secured | from 5.15.1 to 5.19.0 | ../../weasis-pacs-connector/weasis?&patientID={}&target=_self&access_token={}<br>../../weasis-pacs-connector/weasis?&studyUID={}&target=_self&access_token={} |
79-
| Secured* | from 5.15.1 to 5.19.0 | ../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self&access_token={}<br>../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self&access_token={} |
80-
| Unsecured | from 5.19.1 to 5.22.1 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&target=_self<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&target=_self |
81-
| Unsecured* | from 5.19.1 to 5.22.1 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self |
82-
| Secured | from 5.19.1 to 5.22.1 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&target=_self&access_token={}<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&target=_self&access_token={} |
83-
| Secured* | from 5.19.1 to 5.22.1 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self&access_token={}<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self&access_token={} |
84-
| Secured | from 5.22.2 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?patientID={{patientID}}&access_token={{access_token}}<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&access_token={{access_token}} <br>IID_URL_TARGET=_self |
85-
| Secured* | from 5.22.2 | IID_PATIENT_URL=../../weasis-pacs-connector/weasis?patientID={{patientID}}&cdb&access_token={{access_token}}<br>IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&cdb&access_token={{access_token}} <br>IID_URL_TARGET=_self |
99+
#### Secured Mode
100+
<div style="font-size: 0.80em;">
86101

87-
</font>
102+
* `IID_PATIENT_URL=../../weasis-pacs-connector/weasis?&patientID={}&cdb&target=_self&access_token={}`
103+
* `IID_STUDY_URL=../../weasis-pacs-connector/weasis?&studyUID={}&cdb&target=_self&access_token={}`
88104

89-
\* Running only the local native version of Weasis (when not connected to a remote version - weasis.war -)
105+
</div>
106+
107+
---
108+
109+
### dcm4chee-arc-light 5.22.2 to 5.30.x
110+
111+
{{% badge style="info" title="weasis-pacs-connector" %}}7.x{{% /badge %}}
112+
113+
#### Unsecured Mode
114+
<div style="font-size: 0.80em;">
115+
116+
* `IID_PATIENT_URL=../../weasis-pacs-connector/weasis?patientID={{patientID}}&cdb`
117+
* `IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&cdb`
118+
* `IID_URL_TARGET=_self`
119+
120+
</div>
121+
122+
#### Secured Mode
123+
<div style="font-size: 0.80em;">
124+
125+
* `IID_PATIENT_URL=../../weasis-pacs-connector/weasis?patientID={{patientID}}&cdb&access_token={{access_token}}`
126+
* `IID_STUDY_URL=../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&cdb&access_token={{access_token}}`
127+
* `IID_URL_TARGET=_self`
128+
129+
</div>
130+
131+
---
132+
133+
### dcm4chee-arc-light 5.31.0+
134+
135+
{{% badge style="info" title="weasis-pacs-connector" %}}8.x{{% /badge %}}
136+
137+
{{% notice warning %}}
138+
**Requirements**: Java 17+ and Jakarta EE 10 (WildFly 29.0.1.Final or later)<br>
139+
**Note**:the context path has changed from ../../ to ../../../
140+
{{% /notice %}}
141+
142+
#### Unsecured Mode
143+
<div style="font-size: 0.80em;">
144+
145+
* `IID_PATIENT_URL=../../../weasis-pacs-connector/weasis?patientID={{patientID}}&cdb`
146+
* `IID_STUDY_URL=../../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&cdb`
147+
* `IID_URL_TARGET=_self`
148+
149+
</div>
150+
151+
#### Secured Mode
152+
153+
<div style="font-size: 0.80em;">
154+
155+
* `IID_PATIENT_URL=../../../weasis-pacs-connector/weasis?patientID={{patientID}}&cdb&access_token={{access_token}}`
156+
* `IID_STUDY_URL=../../../weasis-pacs-connector/weasis?studyUID={{studyUID}}&cdb&access_token={{access_token}}`
157+
* `IID_URL_TARGET=_self`
158+
159+
</div>
160+
161+
---
90162

content/getting-started/weasis-protocol.en.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ For loading multiple images, it's recommended to use a manifest file that refere
6161

6262
### Examples to Load Images
6363

64-
If you use weasis-pacs-connector, please refer to <a target="_blank" href="https://github.com/nroduit/weasis-pacs-connector#launch-weasis">Launch Weasis</a>.
64+
If you use weasis-pacs-connector, please refer to [Launch Weasis](https://github.com/nroduit/weasis-pacs-connector#launch-weasis).
6565

6666
* Use [$dicom:get](../../basics/commands/#dicomget) to load a static XML manifest containing direct links (without WADO server) {{< launch >}}$dicom:get -w "https://nroduit.github.io/demo-archive/Lumbar/mf.xml"{{< /launch >}}
6767
{{< highlight shell >}}
@@ -88,14 +88,13 @@ $image:get -u "https://user-images.githubusercontent.com/993975/59107662-6c9ed30
8888

8989
The command for modifying the configuration at launch is `$weasis:config` which can have different arguments:
9090

91-
* **cdb** is the Weasis web context (The URL of weasis.war). If the value is null, the weasis version installed from the [native installer](../) is used. In the weasis-pacs-connector <a target="_blank" href="https://github.com/nroduit/weasis-pacs-connector/blob/master/src/main/resources/weasis-pacs-connector.properties">configuration</a>, the default value is defined by `weasis.base.url`.
92-
* **cdb-ext** is the extension web context of Weasis (The URL of weasis-ext.war containing additional plugins). In the weasis-pacs-connector <a target="_blank" href="https://github.com/nroduit/weasis-pacs-connector/blob/master/src/main/resources/weasis-pacs-connector.properties">configuration</a>, the default value is defined by `weasis.ext.url`.
91+
* **cdb** is the Weasis web context (The URL of weasis-native.zip package in [ViewerHub](../../viewer-hub)). If the value is null, the weasis version installed from the [native installer](../) is used. In the weasis-pacs-connector [configuration](https://github.com/nroduit/weasis-pacs-connector/blob/master/src/main/resources/weasis-pacs-connector.properties), the default value is defined by `weasis.base.url`.
9392
* **arg** is an argument for the launcher. The value must start by $, like arg="$dicom:close --all" (Note: the value can also be directly in the base URI, outside $weasis:config). Single-valued argument but can be specified multiple times.
9493
* **pro** is a property for the launcher containing a key and a value separate by a space. Single-valued property but can be specified multiple times.
9594
* **auth** is the web authorization parameter
9695
* **wcfg** is the URL the remote Weasis configuration service.
9796

98-
Here are some examples that modify the launcher properties without using <a target="_blank" href="https://github.com/nroduit/weasis-pacs-connector#launch-weasis">weasis-pacs-connector</a>:
97+
Here are some examples that modify the launcher properties without using [weasis-pacs-connector](https://github.com/nroduit/weasis-pacs-connector#launch-weasis):
9998

10099
* Configuration for launching Weasis Dicomizer {{< launch >}}$weasis:config pro="felix.extended.config.properties file:conf/dicomizer.json" pro="gosh.port 17181"{{< /launch >}}
101100
{{< highlight shell >}}

themes/hugo-theme-relearn

Submodule hugo-theme-relearn updated 159 files

0 commit comments

Comments
 (0)