failing to export images or pull images from dcm4chee web3

4,528 views
Skip to first unread message

Wade Allen

unread,
Sep 18, 2013, 1:02:42 PM9/18/13
to dcm...@googlegroups.com
I tried to find someone with a similar problem but haven't been successful yet...this has been eating at me for a few days and I need some help.

I have installed dcm4chee-2.17.1-mysql on an ubuntu machine along with the web3 interface, and successfully used dcmsnd to load images. I can see them listed in the web3 interface, but I haven't yet gotten them to the computer that needs them. My destination computer is a Windows 7 machine.

The program I'm using can successfully view the images on dcm4chee using the AE: DCM4CHEE on port 11112. I created another AE to transfer the images to my desired destination computer, and I called the AE: VM1 on port 11113 with the proper local IP.  Both AEs echo just fine from the web3 Application Entities menu.

However, once I try to pull an image using a script on the destination computer, it fails with the following output on the destination computer:

Association Acknowledged (Max Send PDV: 16372)
Received C-Echo RQ: MsgID 1
AffectedSOPClassUID: =VerificationSOPClass
Data Set: Not Present
Association Release

If I try to use the export button on the web3 interface to send an image using my VM1 AE, it also fails, with the following error on the web3 popup:

1 C-MOVE requests done in 342 ms!
Instances completed:0 warning:0 failed:162 remaining:0
Failed C-MOVE requests:
4: PatId:[unknown],studyIUIDs:1.2.124.113532.24.35661.52481.20110620.130839.404460
  failed with status A702 Error Comment:null
  Started at 2013-09-18 11.49.25,572 failed at 2013-09-18 11.49.25,914

and the following is the end of a long stream of output from the dcm4chee machine:

11:49:25,897 ERROR [QueryRetrieveScpService] /2013/9/12/15/E794ACD8/9C59BF4A/28481531
java.io.FileNotFoundException: /2013/9/12/15/E794ACD8/9C59BF4A/28481531
    at org.dcm4chex.archive.dcm.qrscp.QueryRetrieveScpService.getFile(QueryRetrieveScpService.java:1569)
    at org.dcm4chex.archive.dcm.qrscp.QueryRetrieveScpService.getFile(QueryRetrieveScpService.java:1558)
    at org.dcm4chex.archive.dcm.qrscp.QueryRetrieveScpService.getFile(QueryRetrieveScpService.java:1549)
    at org.dcm4chex.archive.dcm.qrscp.QueryRetrieveScpService.makeCStoreRQ(QueryRetrieveScpService.java:1404)
    at org.dcm4chex.archive.dcm.qrscp.MoveTask.retrieveLocal(MoveTask.java:410)
    at org.dcm4chex.archive.dcm.qrscp.MoveTask.run(MoveTask.java:355)
    at java.lang.Thread.run(Thread.java:679)
11:49:25,900 INFO  [FsmImpl] sending A-RELEASE-RQ
11:49:25,903 INFO  [FsmImpl] received A-RELEASE-RP
11:49:25,904 INFO  [FsmImpl] closing connection - Socket[addr=/192.168.1.42,port=11113,localport=53677]
11:49:25,912 INFO  [FsmImpl] sending [pc-1] 5:C_MOVE_RSP with Dataset
    class:    1.2.840.10008.5.1.4.1.2.2.2/Study Root Query/Retrieve Information Model - MOVE
    status:    a702
11:49:25,913 INFO  [PDUDecoder] DCM4CHEE(14) >> 5:C-MOVE-RSP[pcid=1, remaining=null, completed=0, failed=162, warning=0, status=a702H
    cuid=1.2.840.10008.5.1.4.1.2.2.2/Study Root Query/Retrieve Information Model - MOVE
    ts=1.2.840.10008.1.2/Implicit VR Little Endian]
11:49:25,914 INFO  [ExportPage] ExportResponseHandler (msgId5) received C-MOVE-RSP:(0000,0002) UI #28 [1.2.840.10008.5.1.4.1.2.2.2] Affected SOP Class UID
(0000,0100) US #2 [32801] Command Field
(0000,0120) US #2 [5] Message ID Being Responded To
(0000,0800) US #2 [0] Data Set Type
(0000,0900) US #2 [42754] Status
(0000,1021) US #2 [0] Number of Completed Sub-operations
(0000,1022) US #2 [162] Number of Failed Sub-operations
(0000,1023) US #2 [0] Number of Warning Sub-operations

11:49:25,914 INFO  [ExportPage] Move Request Done. close assoc! calledAET:DCM4CHEE
11:49:48,920 INFO  [FileSystemMgt2Service] Check file system group ONLINE_STORAGE for deletion of orphaned private files
11:49:48,926 INFO  [FileSystemMgt2Service] Check file system group LOSSY_STORAGE for deletion of orphaned private files
11:50:35,596 INFO  [PDUEncoder] DCM4CHEE(14) << A-ABORT[source=0, reason=0]
11:50:35,596 INFO  [FsmImpl] received A-ABORT
    source=0 - service-user
    reason=0 - reason-not-specified
11:50:35,596 INFO  [FsmImpl] closing connection - Socket[addr=/127.0.0.1,port=55917,localport=11112]
11:50:35,597 ERROR [ActiveAssociationImpl] Received A-ABORT
    source=0 - service-user
    reason=0 - reason-not-specified
org.dcm4che.net.PDUException: Received A-ABORT
    source=0 - service-user
    reason=0 - reason-not-specified
    at org.dcm4cheri.net.DimseReaderImpl.nextPDataTF(DimseReaderImpl.java:200)
    at org.dcm4cheri.net.DimseReaderImpl.nextPDV(DimseReaderImpl.java:168)
    at org.dcm4cheri.net.DimseReaderImpl.read(DimseReaderImpl.java:78)
    at org.dcm4cheri.net.AssociationImpl.read(AssociationImpl.java:313)
    at org.dcm4cheri.net.ActiveAssociationImpl.run(ActiveAssociationImpl.java:212)
    at org.dcm4cheri.util.LF_ThreadPool.join(LF_ThreadPool.java:174)
    at org.dcm4cheri.net.ActiveAssociationImpl.run(ActiveAssociationImpl.java:157)
    at org.dcm4cheri.server.DcmHandlerImpl.handle(DcmHandlerImpl.java:249)
    at org.dcm4cheri.server.ServerImpl.run(ServerImpl.java:288)
    at org.dcm4cheri.util.LF_ThreadPool.join(LF_ThreadPool.java:174)
    at org.dcm4cheri.util.LF_ThreadPool$1.run(LF_ThreadPool.java:221)
    at java.lang.Thread.run(Thread.java:679)
11:50:35,597 INFO  [ServerImpl] finished - Socket[addr=/127.0.0.1,port=55917,localport=11112]
11:50:35,647 INFO  [Association] DCM4CHEE(14): close Socket[addr=localhost/127.0.0.1,port=11112,localport=55917]
11:50:35,647 WARN  [Association] unable to send A-RELEASE-RQ in state: Sta1

I'm stuck! I don't know what I might be missing, and learning about this on my own has been difficult so far. Can someone see what I'm missing, or point me in the right direction to get an image transfer working? Thanks!

Wade

fleetwoodfc

unread,
Sep 18, 2013, 1:39:27 PM9/18/13
to dcm...@googlegroups.com
 "I created another AE to transfer the images to my desired destination computer, and I called the AE: VM1 on port 11113 with the proper local IP" - how/why did you do this?
Normally you add the AE,IP,Port of the destination to dcm4chee then export to it i.e. query DCM4CHEE and retrieve to the destination AE.

Wade Allen

unread,
Sep 18, 2013, 1:58:16 PM9/18/13
to dcm...@googlegroups.com
Thanks for answering!

Unless I'm misunderstanding, I think I did what you're suggesting, fleetwoodfc. This is the first time I'm creating a PACS, though, so I surely did something wrong. Here's some more detail of what I did there:

1) Install dcm4chee and web interface
2) load images
3) create AE on the web interface with the following details (Title: VM1, Host: <destination computer's IP>, Port: 11113)
4) set up a listener script on the destination computer, through my program
5) tried the echo on the web interface...successful
6) chose an image on the web interface, tried to export with the destination AET: VM1...failed

What did I miss?

fleetwoodfc

unread,
Sep 18, 2013, 2:15:08 PM9/18/13
to dcm...@googlegroups.com
Is VM1 a DICOM Store SCP ?

Wade Allen

unread,
Sep 18, 2013, 2:46:57 PM9/18/13
to
VM1 is the title of the AE that refers to the destination computer. It has a storescp program on it, if that's what you mean?

The destination computer is a Windows 7 virtual machine running a listener script, and the machine has a file called storescp.exe that is called by the listener script. The listener is named pacs_listener.bat, the contents of which are below (with a few directories and names edited out):

CHCP 1252
start "pacs_listener" /min "<filepath of the storescp>" -v -od "<filepath of a destination subfolder>" -aet VM1 -dhl -ss CV -fe .dcm 11113

REM [PACS]
REM archive_folder = <filepath of a destination folder>
REM client_ae = VM1
REM client_port = 11113
REM host_name = <name of computer with DCM4chee installed>
REM host_ae = DCM4CHEE
REM host_port = 11112
REM echoscu --aetitle VM1 --call VM1 localhost 11113
REM findscu --aetitle VM1 --call DCM4CHEE --patient -k 0008,0052=PATIENT -k 0010,0010="*" -k 0010,0020="*" <name of computer with DCM4chee installed> 11112
REM movescu --aetitle VM1 --call DCM4CHEE --move VM1 --port 11113 --patient -k 0008,0052=PATIENT -k 0010,0010="*" <name of computer with DCM4chee installed> 11112

fleetwoodfc

unread,
Sep 19, 2013, 8:46:26 AM9/19/13
to dcm...@googlegroups.com
The first thing to figure out is why the FileNotFound exception on DCM4CHEE - can you manually access the file /2013/9/12/15/E794ACD8/9C59BF4A/28481531


On Wednesday, September 18, 2013 2:41:09 PM UTC-4, Wade Allen wrote:
VM1 is the title of the AE that refers to the destination computer. It has a storescp program on it, if that's what you mean?

The destination computer is a Windows 7 virtual machine running a listener script, and the machine has a file called storescp.exe that is called by the listener script. The listener is named pacs_listener.bat, the contents of which are below (with a few directories and names edited out):

CHCP 1252
start "pacs_listener" /min "<filepath of the storescp>" -v -od "<filepath of a destination subfolder>" -aet VM1 -dhl -ss CV -fe .dcm 11113

REM [PACS]
REM archive_folder = <filepath of a destination folder>
REM client_ae = VM1
REM client_port = 11113
REM host_name = <name of computer with DCM4chee installed>
REM host_ae = DCM4CHEE
REM host_port = 11112
REM echoscu --aetitle VM1 --call VM1 localhost 11113
REM findscu --aetitle VM1 --call DCM4CHEE --patient -k 0008,0052=PATIENT -k 0010,0010="*" -k 0010,0020="*" <name of computer with DCM4chee installed> 11112
REM movescu --aetitle VM1 --call DCM4CHEE --move VM1 --port 11113 --patient -k 0008,0052=PATIENT -k 0010,0010="*" <name of computer with DCM4chee installed> 11112



On Wednesday, September 18, 2013 1:15:08 PM UTC-5, fleetwoodfc wrote:

Wade Allen

unread,
Sep 19, 2013, 10:34:02 AM9/19/13
to dcm...@googlegroups.com
Great idea, I should have thought of that. Thanks for your extended help.

The file exists in my dcm4chee mysql server folder: /home/<username>/Documents/dcm4chee-2.17.1-mysql/server/default/2013/9/12/15/E794ACD8/9C59BF4A

It is a DICOM image file (about 535 kB) that I can see in a DICOM viewer.

NOTE that this is not the root directory...the filename starts under a Documents folder. If dcm4chee is calling /2013/9/... from root, it's not gonna find it. Let me flesh out that possibility.

Would permissions be an issue? We have a few usernames that have worked on this. I am not root, and thus am not the file's owner, but could change those. 

Wade Allen

unread,
Sep 19, 2013, 11:22:48 AM9/19/13
to dcm...@googlegroups.com
Well, copying the files to root worked! I can export now without any problems.

I'm not sure why dcm4chee would store files in a different place than it expects them, unless for whatever reason there's an environmental variable that isn't being used properly to define the path...

Hrm. Well, unless you have any other ideas, I suppose I might be creating a script to do both a dcmsnd and mv every time I need to add a file.

Thanks so much for your help! Now that I have a working setup, I can play with it to understand more about why this happened.

SERGIO MONSALVE

unread,
Jan 16, 2019, 7:02:11 PM1/16/19
to dcm4che
INSTALACION DCM4CHEE 2.18.3
Saludos amigos aca les dejo algo que puede servirle a tu solucion 
Reply all
Reply to author
Forward
0 new messages