Help installing dcm4che-arr 4.1.0

201 views
Skip to first unread message

Jesse Pangburn

unread,
Mar 30, 2016, 5:20:54 PM3/30/16
to dcm4che
Hi,
I'm trying to install dcm4che-arr version 4.1.0 with MySQL using JSON (not LDAP), without any other dcm4che components because I just want to test the ARR.  I am following instructions at https://github.com/dcm4che/dcm4chee-arr/blob/master/INSTALL.md, and chose JBOSS AS 7.1.1Final.  Downloaded the dcm4che-arr binary from sourceforge at https://sourceforge.net/projects/dcm4che/files/dcm4chee-arr/4.1.0/dcm4chee-arr-4.1.0-mysql.zip/download

I have done the following steps:
1. initialized database, no errors
  This is where I have my first question.  It says to copy sample-config.json, but nowhere else in the instructions does it say how to configure the system to use this.  Does it just load any json it finds in that directory???
3. Ignore the "Setup JBoss AS 7" step as I think if you leave it out that it defaults to json_file anyway.  Is there a missing instruction here?  Is this the place where we point to the previous "sample-config.json" file?
4.  The next steps give no errors "Install DCM4CHE {lib-version} libraries as Jboss modules" and "Install QueryDSL 3.2.3 libraries as WildFly module"
5.  In the next step "Install JDBC Driver" I did the setup as core module, and updated module.xml to point at the current version of MySQL connector
6. The next step "Start JBoss AS 7 or EAP 6.X in standalone mode with the Java EE 6 Full Profile configuration" is fine with no error.  But if someone had followed the step where you update standalone.xml, then wouldn't this cause JBOSS to ignore that previously updated standalone.xml file?

7.  The next step "Add JDBC Driver into the server configuration using JBoss AS 7 CLI in a new console window" causes an error:
[standalone@localhost:9999 /] /subsystem=datasources/jdbc-driver=mysql:add(driver-module-name=com.mysql,driver-name=mysql)
{
    "outcome" => "failed",
    "failure-description" => "JBAS014749: Operation handler failed: Service jboss.jdbc-driver.mysql is already registered",
    "rolled-back" => true
}

It appears the error is harmless though because it says it's already registered.
8.  The next step "Create and enable a new Data Source bound to JNDI name java:/arrDS using JBoss AS 7 CLI:" is fine with no error
9.  Ignored the next step "By default, DCM4CHEE ARR will assume dcm4chee-arr as its Device Name" because I had no interest in changing the device name
10.  I find the next step confusing "DCM4CHEE ARR requires a keystore file for TLS as well as a truststore".  If I initially want to test with just UDP, can I ignore this step?  When I want to use TLS, this step doesn't say how I point at the keystore/truststore I have using JSON.  I assume this must be where I edit the mysterious sample-config.json, but it doesn't say how and that file doesn't have key/value pairs for this under the TLS section, and I still don't know how to make this thing use that file anyway.
11. The next step "Add Jms queue to the jboss configuration via CLI as follows" works with no errors
12.  The next step "Deploy DCM4CHEE ARR using JBoss AS 7 CLI" is where things go really wrong.  I did the following:
[standalone@localhost:9999 /] deploy /tmp/ARR/dcm4chee-arr-4.1.0-mysql/deployment/dcm4chee-arr-cdi-war-4.1.0-mysql.war
{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.module.service.\"deployment.dcm4chee-arr-cdi-war-4.1.0-mysql.war\".main" => "org.jboss.msc.service.StartException in service jboss.module.service.\"deployment.dcm4chee-arr-cdi-war-4.1.0-mysql.war\".main: Failed to load module: deployment.dcm4chee-arr-cdi-war-4.1.0-mysql.war:main"}}}}

If I look in the console output where I started JBOSS, I see the following relevant error:
Caused by: org.jboss.modules.ModuleNotFoundException: Module org.apache.commons.compress:main is not found in local module loader @5e9815f3 (roots: /opt/jboss71/jboss-as-7.1.1.Final/modules)

I guess this has probably been a problem before because I find https://github.com/dcm4che/compress-jboss-module/tree/master/src/main/modules/org/apache/commons/compress/main/module.xml.  I use this as example and download commons-compress 1.10 and update the module.xml to point to it.  Running the deploy command again gets past this problem and the server console prints out a bunch of INFO messages like:
21:11:16,086 INFO  [org.hibernate.tool.hbm2ddl.TableMetadata] (MSC service thread 1-2) HHH000261: Table found: ARR.part_obj

So it indicates successful connection to the MySQL database, good news!  But then the last lines I see are:
21:11:16,386 INFO  [org.jboss.weld.deployer] (MSC service thread 1-1) JBAS016008: Starting weld service for deployment dcm4chee-arr-cdi-war-4.1.0-mysql.war
21:11:17,713 WARN  [org.dcm4che3.conf.dicom.DicomConfigurationBuilder] (MSC service thread 1-1) Configuration storage init: system property 'org.dcm4che.conf.storage' not found. Using default value 'json_file'. Possible values: 'json_file', 'ldap'.

This last line is why I think the earlier step about putting json_file doesn't matter because it seems to be the default.  The problem is this deploy line seems to hang:
[standalone@localhost:9999 /] deploy /tmp/ARR/dcm4chee-arr-4.1.0-mysql/deployment/dcm4chee-arr-cdi-war-4.1.0-mysql.war

It never comes back to the prompt.  So I assume it's hung up on the json config file "sample-config.json" that I don't know how to point to?  Eventunsole, I see some more lines like this:
21:16:17,666 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012121: TransactionReaper::doCancellations worker Thread[Transaction Reaper Worker 0,5,main] successfully canceled TX 0:ffff7f000001:-4dcf028d:56fc366a:44

Seems to be a timeout or something on the deployment, but still the "[standalone" console appears hung.

Any ideas what I'm doing wrong?  Or maybe any answers to my questions in earlier steps?  Thank you! 

Jesse Pangburn

unread,
Apr 4, 2016, 1:57:26 PM4/4/16
to dcm4che
Bump.  Has anyone installed dcm4che-arr standalone with Mysql and JSON config and had it work?  Any idea at least for what I need to do to point my config at the sample-config.json file?
Reply all
Reply to author
Forward
0 new messages