http://www.dcm4che.org/confluence/display/ee2/Building+dcm4chee dcm4che.org Building dcm4chee - Rev 3 ============================= This page describes how to build, deploy, configure, and test dcm4chee on a development system. It assumes no use of and IDE such as Eclipse or Netbeans. Structure of dcm4chee --------------------- dcm4chee has several [modules|http://www.dcm4che.org/confluence/display/ee2/Organization+of+the+Source+Code]. Each module is a project in a subfolder of the main source code folder. All of these modules run in the JBoss application server. JBoss provides low level services to applications, such as security, database connections, caching, and so on. Some modules are top level applications, such as the dcm4chee server. Some are optional features of dcm4chee. For example, dcm4jboss-cdw writes images to CD. Some are low level components of other modules. For example, dcm4jboss-web-ejb wraps database details such as query definitions. Three of these are main modules that make up the dcm4chee default configuration. dcm4chee main module -------------------- The dcm4jboss-all module is the main dcm4chee module. This module is responsible for the core dcm4chee activity, such as storing and retrieving studies throught DICOM services, handling queries, and so on. [This page|http://www.dcm4che.org/confluence/display/ee2/Organization+of+the+Source+Code] describes the the modules needed by dcm4jboss-all. As of this writing (July 2012), 2.17.2 is the current version of dcm4chee. The version appears in file and folder names. The version number changes often. So the dcm4chee version is written in these instructions. For example, the dcm4chee binaries are deployed into a folder named dcm4chee--. When dcm4chee is started, an instance of JBoss is started to host it. The audit record Repository --------------------------- The dcm4chee-arr module is the audit record repository. The repository records important events, such as deleting an exam, as required by IHE best practices and various regulatory agencies. As of this writing (July 2012), 3.0.11 is the current version. This version number is written here as . The repository can serve multiple instances of dcm4chee and other servers. It is therefore built as a stand alone application. It can run in a separate instance of JBoss. However, the repository often serves just one instance of dcm4chee. In this case, it is deployed inside dcm4chee, and is hosted by the same instance of JBoss. This page includes instructions for building the audit record repository from source code and deploying it inside dcm4chee. By default, communication between the repository and dcm4chee is loose. dcm4chee broadcasts audit records via UDP and does not listen for a response. The repository listens for UDP records, and stores them. It is also possible to use TCP/IP, which requires a connection between dcm4chee and the repository. TCP/IP can support secure communication. dcm4chee can start and run even if the repository fails. The web console --------------- The dcm4chee-web module is the dcm4chee-web3 console, a web browser interface for dcm4chee. It allows a system administrator to view patients and studies (one image at a time), see Modality Worklist status, and so on. It is not intended for medical use by physicians. The web interface runs when the system administrator enters the URL in a web browser. Typically the URL is http://localhost:8080/dcm4chee-web3. The interface sends requests for information to the dcm4chee backend server. The dcm4chee-web module accepts these requests, finds the information, formats it as a web page, and sends it to the browser. This module uses the DICOM WADO and IHE RID protocols to exchange information with the browser. These protocols use HTTP. Normally, this module runs inside dcm4chee, and is hosted by the same instance of JBoss. Before version 2.17.2, the older dcm4chee-web console was used instead. This URL was http://localhost:8080/dcm4chee-web (no 3 at the end). The dcm4chee-web console has some features (MPPS, GP Worklist, Offline storge, XDS-I) that have been dropped from the new interface. It is therefore sometimes useful to deploy the old web interface as a stand alone application. This page does not cover building or deploying the old interface. Setup ----- In order to build and run the components of the dcm4chee archive application you will need to download and install some applications and the dcm4chee source code. You will need The Java Development Kit Tools - Apache Ant, XDoclet, Apache FOP, JBoss, and Maven. A database engine An SVN client for source control The source code for dcm4chee and related modules. DICOM utilities for testing. This page will assume the dcm4che2 toolkit is being used. One or more DICOM images for testing. (Not provided here. You will need to find your own.) === Does anyone have a copy of the Homer Simpson CT image? For some platforms, you will need to download codecs for compression/decompression. For others, you can use codecs that come with the source code. Most developers will want an IDE such as Eclipse or NetBeans. IDEs are not covered by this page. The [dcm4chee installation page|http://www.dcm4che.org/confluence/display/ee2/Installation] has information for each operating system about compression and installing databases. It has information about running dcm4chee-arr separately from dcm4chee. The instructions on this page assume that dcm4chee-arr will be run within dcm4chee. They assume that the databases for dcm4chee and dcm4chee-arr will use the same database engine. It is a good idea to keep careful notes about choices for configuration, versions, etc. Notes can be helpful for troubleshooting, and they can help you repeat your choices if you upgrade to a new version of dcm4chee. Choose Folders -------------- The build scripts need to know what folders contain the JDK, the Tools, and the source code. So either choose folders where you will install them, or note the folders and versions that are already present. The JDK and each tool may be scattered over a set of folders. For each, find a lib folder with the executables (jar files). The folder to note is up one level. E.G. for Maven, you may find this file /usr/share/maven2/lib/maven-debian-uber.jar In that case, note that maven is installed in /usr/share/maven2 You can find the version by running the apps with a parameter like -v, -version, or --version. For example, /usr/share/maven2/bin/mvn -v Tip - Spaces in paths sometimes causes problems for the JDK. Avoid paths like C:\Program Files. This is not essential. Most scripts can handle spaces. If you use paths with spaces in commands on this page, you will need to surround them with quotes. If you have an existing development environment, there is no need to change it now. But if you are setting up a new development environment, choosing paths without spaces is painless, and might prevent trouble some day. By default, the dcm4chee-jboss-all build script expects the Tools to be in the user's home folder. By default, Maven creates a local repository in the user's home folder on the first use of Maven. The home folder is fine for a Linux development environment, but may not be your favorite choice for Windows. Depending on the version of Windows, the home folder would be something like C:\Users\ or C:\Documents and Settings\. Windows uses it for things like application settings, not application binary files. You might prefer something like C:\JavaApps. user.home --------- dcm4chee and Maven have configuration files containing ${user.home}. This Java System property should expand to the user's home folder. Windows only - user.home is incorrect on some Windows computers. See this [Java bug report|http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6519127], and this [discussion|http://www.timehat.com/javas-user-home-is-wrong-on-windows/] for more information. See this [stackoverflow post|http://stackoverflow.com/questions/2134338/java-user-home-is-being-set-to-userprofile-and-not-being-resolved] for a work around. The simplest work around may be to replace ${user.home} with the desired path in Build.properties, as described below. You will also need to choose a folder where dcm4chee and dcm4chee-arr will be deployed. The same folder that contains the tools is often a good choice. Some operating systems (Linux) use / in paths. Some (Windows) use \. You may need to adjust the instructions below to match your operating system. Choose a Database Engine ------------------------ Choose one of these database engines and install it. The build scripts need to know which database engine will be used. Remember the string that matches the database engine. You will use it to replace a argument below. Database engine String --------------- ------ PostgreSQL 8.1+ psql MySQL 4.1+ mysql Oracle 9i+ oracle SQL Server 2000+ mssql DB2 8.1+ db2 Firebird 2.1+ firebird Hypersonic SQL hsql (Embedded in JBoss AS) - not suitable for production use! Follow database-specific instructions on the [dcm4chee installation page|http://www.dcm4che.org/confluence/display/ee2/Installation] to create the pacsdb and arrdb databases. Note that the instructions describe how to create tables for pacsdb, using a file found in the downloaded binaries. Either find the file in the source code, download the binaries, or defer this step until you have built your own binaries. For example, MySql requires dcm4chee-mysql-2.16.2/sql/create.mysql. This is found in the source files at dcm4jboss-all\dcm4jboss-ejb\src\etc\mysql\sql. The dcm4chee-arr repository will automatically create tables for the arrdb database on first use. JDK --- Download and install the JDK. The definitive version of Java is the Sun/Oracle version from http://www.oracle.com/technetwork/java/javase/downloads/index.html. If you use this, you need the JDK SE. The JDK EE would also work - It contains GlassFish, which is not needed for dcm4chee. Some operating systems (E.G. Ubuntu) have license issues with Oracle and offer better support (automatic updates) for OpenJDK. Oracle and OpenJDK versions both work. The release files for dcm4che.org projects are built with Oracle Java 5 (aka 1.5). But most developers use Java 6. Do not use Java 7. 32 bit JDK for Windows ---------------------- 32 bit Java is recommended for all computers running Windows. Java applications are platform independent. Either 32 bit or 64 bit Java can run the same Java applications. This includes JBoss, applications managed by JBoss (including dcm4chee), and the Java codecs that dcm4chee uses for compression. dcm4chee uses codecs from the JAI ImageIO library, which is provided by Sun. For 32 bit Windows, the library includes both Java codecs and faster native codecs. For 64 bit Windows, there are no native codecs. So when run as a 64 bit Windows app, dcm4chee is slower and supports fewer compression algorithms. Multiple versions of Java can be installed. So 32 bit Java can be used for dcm4chee, and 64 bit Java can be used by other applications. There is no need to use a 32 bit database engine on computers that run Windows, even though some database engines use Java. Database engines are separate from Java/JBoss/dcm4chee. dcm4chee communicates with the database through database connections, SQL statements, and datasets. Likewise, there is no need for a 32 bit SVN client. Many Java applications use startup scripts. Most scripts use the JAVA_HOME environmental variable to find the Java executables and libraries. After Java is installed, set the JAVA_HOME environmental variable to the folder of the desired version of Java. For example, you might set it to C:\JavaApps\Java\jdk1.6.0_31 or /usr/lib/jvm/java-6-openjdk Tools ----- Download and install these Java applications into the folder of your choice. For most of the tools, this means download to a temp folder, and unzip the file to your tools folder. Ant 1.7.x or 1.8.x http://ant.apache.org/ As of this writing (July 2012), 1.8.2 is the latest version. It is too soon to say if version 1.9.x will work with dcm4chee. Installation instructions are in the Ant Manual. http://ant.apache.org/manual/index.html. Some important points: Set up the ANT_HOME environmental variable as directed. Change PATH as directed. JAVA_HOME should already be set. dcm4chee does not require any of the optional tasks or libraries. If you are behind a firewall, you may need to set ANT_OPTS. There must be no CLASSPATH environmental variable. It interferes with Ant. You can test Ant. If it doesn't work, read the Ant FAQs before asking questions. XDoclet 1.2.3 http://xdoclet.sourceforge.net/ This is the latest version, as of this writing (July 2012). Apache FOP 0.95 http://xmlgraphics.apache.org/fop/ Apache™ FOP (Formatting Objects Processor) is a print formatter driven by XSL formatting objects (XSL-FO) and an output independent formatter. It is a Java application that reads a formatting object (FO) tree and renders the resulting pages to a specified output. Don't use FOP 0.95 beta. FOP 0.95 supercedes 0.95 beta. Don't use FOP 1.0+. These require are less forgiving of variations in the XSL files that earlier versions. Installation instructions are at http://xmlgraphics.apache.org/fop/quickstartguide.html The instructions say to download, configure, build, and run. Only the download step is needed for use with dcm4chee. You can test FOP, but the results might be flaky. Possibly this is because we do not configure FOP. Jakarta Cactus 1.8.1 http://attic.apache.org/projects/jakarta-cactus.html Cactus has been retired, and is now available in the attic at the apache site. Cactus is only needed to build the test suite for dcm4jboss-ejb. It is not needed to build the application. JBoss 4.2.3 GA http://labs.jboss.com/jbossas/downloads/ Version 4.2.3 GA is required. Use neither JBoss 5 nor JBoss 6, because it is completely re-architected and is significantly different than the 4.2 line of JBoss! If you use JDK 6, it is OK to download JBoss for JDK 6 (jboss-4.2.3.GA-jdk6.zip) If you use JDK 5, download jboss-4.2.3.GA.zip dcm4chee is often started by a run.bat or run.sh script. This script creates a command string and executes it. The command tells the Java Virtual Machine to start an instance of JBoss. The script generates parameters and inserts them into the command string. Some parameters configure JBoss. One parameter tell JBoss to load dcm4chee. Other parameters may configure dcm4chee. In order to start JBoss, the run script needs JBoss runtime files. During installation, the install_JBoss script copies JBoss runtime files into the dcm4chee folder. Download JBoss to a temp folder, and unzip the file into the tools folder. The install_JBoss script will be run in a later step. Maven 3.0.4 http://maven.apache.org/ This is the latest version, as of this writing (July 2012). Installation instructions are at the end of the [download page|http://maven.apache.org/download.html]. Some important points: Set up the M2_HOME and M2 environmental variables. Add M2 to your PATH You may need to set up the optional MAVEN_OPTS environmental variable for Allocating additional memory for Maven You may need to edit the settings.xml configuration file for Path to the local repository HTTP proxy server Repository manager location Server authentication and passwords You can test Maven. On its first use, Maven creates a local repository in a folder named .m2 (Note the leading dot.) By default, the repository goes in ${user.home}/.m2/repository. To change the location, edit settings.xml. See http://maven.apache.org/settings.html for more information. If you are using Eclipse, you may also need to change Window > Preferences > Maven > User settings It may be simpler to use the default folder, even for Windows. dcm4che2 DICOM toolkit http://sourceforge.net/projects/dcm4che/files/dcm4che2/ The easiest way to get utilities for testing is to download the latest binaries. However the source code is excellent example code for leaning about dcm4chee. Note that dcm4chee uses the older dcm4che 1.4 toolkit. This version is no longer actively being developed. The newer dcm4che 2.0 toolkit should be used for most purposes, including testing dcm4chee. The names are confusing. dcm4chee (2 e's) refers to the image server - the software being built by this page. dcm4che (1 e) refers to the toolkit or the dcm4che.org open source project. dcm4che2 is the newer 2.0 version of the toolkit. dcm4che14 is the older 1.4 version of the toolkit. Source Control -------------- Download and install an SVN client. TortoiseSVN is a good choice for Windows. Build dcm4chee -------------- Download source code for subprojects ------------------------------------ Open a terminal window. cd to the folder where the source code will go. Execute these commands to create a subfolder for each subproject and download code into them. svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4che14/trunk dcm4che14 svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-arr/trunk dcm4chee-arr svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-audit/trunk dcm4chee-audit svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-docstore/tags/DCM4CHEE_XDS_1_0_3 dcm4chee-docstore svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-xds-infoset/tags/DCM4CHEE_XDS_1_0_3 dcm4chee-xds-infoset svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-arc3-entities/trunk dcm4chee-arc3-entities svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-icons/trunk dcm4chee-icons svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-web-common/trunk dcm4chee-web-common svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-dashboard/trunk dcm4chee-dashboard svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-usr/trunk dcm4chee-usr svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-web/trunk dcm4chee-web svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-arc/trunk dcm4jboss-all Building the subprojects should be clean. But this warning may appear [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent! This is benign. See the [Maven FAQ|http://maven.apache.org/general.html]. This warning may appear if you are using Ant 1.8 'includeantruntime' was not set, defaulting to build.sys classpath=last; set to false for repeatable builds This is benign. See [this post|http://stackoverflow.com/questions/5103384/ant-warning-includeantruntime-was-not-set]. Build dcm4che14 --------------- Note: This works with Java 6 and lower only. It doesn't work with Java 7 - for details see http://www.dcm4che.org/jira/browse/DCMOLD-219. cd to the dcm4che14 subfolder ant There are many warnings. Many are from incorrect JavaDoc comments. Some are because the JAI library is old and may not be supported in the future. Build dcm4chee-arr ------------------ cd to the dcm4chee-arr subfolder mvn -Ddb= install This project may fail the first time it is built because javax.transaction./jta/1.0.1B/jta-1.0.1B.jar is not available. === This is low-priority a bug? It could prevent dcm4chee-arr from being built as a stand-alone project, but has an easy work around. The work around is to build dcm4chee-web and then try dcm4chee-arr again. dcm4chee-web downloads the missing jar. MySql only Bug: For the arrdb database, table creation fails for MySql 5.5. type= is an obsolete parameter in the create MySql table command. It is deprecated in MySql 5.1, and not supported in 5.5. See this [bug report|http://www.dcm4che.org/jira/browse/ARR-123]. Work around: Open dcm4chee-arr/dcm4chee-arr-entities/target/hibernate3/sql/dcm4chee-arr-mysql.ddl in a text editor. Change type= to engine= Note that this ddl is only used to create the arr database tables. The work around is seldom needed. Note that rebuilding dcm4chee recreates the ddl with the original type= lines. Note that this bug will soon be fixed. The whole issue can then be forgotten. cd to the dcm4chee-arr-dist subfolder mvn -Ddb= assembly:assembly Build dcm4chee-audit -------------------- cd to the dcm4chee-audit subfolder mvn install Build dcm4chee-docstore -------------------------- cd to the dcm4chee-docstore subfolder mvn install Build dcm4chee-xds-infoset -------------------------- cd to the dcm4chee-xds-infoset subfolder mvn install Build dcm4chee-web ------------------ cd to the dcm4chee-web subfolder mvn -Pall -Ddb= install This warning may appear Warning: Wicket is running in DEVELOPMENT mode This is normal for a development build. This step may fail the first time it is tried with a message that the system is out of resources. This can be cause by a timeout while waiting for files to download. It can also be caused by running out of memory. The mvn command should succeed if retried. Optional - This packages files for stand alone use. $ cd dcm4chee-web-dist $ mvn -Ddb=mysql assembly:assembly Build dcm4chee-jboss-all ------------------------ This subproject contains sub-subfolders for these sub-subprojects: dcm4jboss-build, dcm4jboss-ejb, dcm4jboss-hl7, dcm4jboss-rid, dcm4jboss-sar, dcm4jboss-wado, and dcm4jboss-web. This subproject is built by Ant. Ant scripts ----------- Each sub-subproject has an XML script in a file named build.xml dcm4jboss-build drives the build. It contains the master script that calls the other scripts. This master script is dcm4jboss-all/dcm4jboss-build/build.xml Each build.xml file, including the master, reads properties from two build.properties files if they exist. They do not exist by default. These are dcm4jboss-all/build.properties dcm4jboss-all//build.properties Each project contains an inactive properties file named build.properties.default. This file can be copied to create an active build.properties file with default properties. Script configuration -------------------- These sub-subprojects use the Tools. The Ant build scripts need paths to various Tools. dcm4jboss-all/build.properties.default defines default paths to the Tools and contains version numbers of some projects. This file is inactive, out of date, and defines default paths to the tools. To correct the situation, do the following cd to dcm4jboss-all Make a copy of build.properties.default. Name it build.properties. Open build.properties in a text editor. Make these changes: For Windows, change the paths. Replace ${user.home} with paths to your folders. For all operating systems, Ant expects paths to use forward slashes and to be case sensitive. For example, this line dcm4che14.home=${user.home}/dcm4che14/build/dcm4che-1.4.30 may become this dcm4che14.home=C:/JavaApps/dcm4chee-2.17.1-mysql-Source/dcm4che14/build/dcm4che-1.4.31 or better dcm4che14.home=../../dcm4che14/build/dcm4che-1.4.31 This line xdoclet.home=${user.home}/xdoclet-1.2.3 may become this xdoclet.home=C:/JavaApps/xdoclet-1.2.3 or possibly this xdoclet.home=../../../xdoclet-1.2.3 For all operating systems, change the names of application folders to match existing folders and files. The version number of dcm4che14 may be out of date. Check the dcm4che14/build/dcm4che- folder name. docstore-version and infoset-version may be out of date. Check the jar file names in these folders. dcm4chee-docstore/dcm4chee-docstore-store/target/dcm4chee-docstore-store-.jar dcm4chee-xds-infoset/dcm4chee-xds-infoset-v30/target/dcm4chee-xds-infoset-v30-.jar Leave javac.source and javac.target at 1.5, even if you are using Java 6. Build ----- cd to dcm4jboss-all/dcm4jboss-build ant -dist Extract the zipped files ------------------------ The build created \dcm4jboss-all\dcm4jboss-build\target\dcm4chee--.zip Unzip this to your deployment folder. The build created \dcm4chee-arr\dcm4chee-arr-dist\target\dcm4chee-arr--.zip Unzip this to your deployment folder. Work around the dcm4chee-web-sar-storescu-3.0.1.sar bug ------------------------------------------------------- ============== Bug === WHAT NUMBER? Building creates many files, among them \dcm4chee-web\dcm4chee-web-sar\dcm4chee-web-sar-storescu\target\dcm4chee-web-sar-storescu-3.0.1.sar. Because of a bug in the source code, this file will generate exceptions when dcm4chee starts up. An unusual work around has been put in place. A good copy of this file from a build before the bug was introduced has been put in source control. Configuration files have been created to prevent Eclipse from compiling the source code that generates this sar. Unfortunately, the work around does not help when building outside Eclipse. Another work around will be used. The build packages dcm4chee-web-sar-storescu-3.0.1.sar inside dcm4chee-web-ear-3.0.1-.ear This ear file will be replaced by the latest ear file from the dcm4chee binary download. Note that the latest file is dcm4chee-web-ear-3.0.2-.ear. Note that the latest file does not contain dcm4chee-web-sar-storescu-3.0.1.sar First download the latest binary for your database from http://sourceforge.net/projects/dcm4che/files/dcm4chee/ Unzip the file into a temporary folder. Copy /dcm4chee--/server/default/deploy/dcm4chee-web-ear-3.0.2-mysql.ear to /dcm4chee--/server/default/deploy Delete dcm4chee-web-ear-3.0.1-.ear Setup the databases, if needed ------------------------------------ If tables were not created for the pacsdb database in the setup steps above, do it now. See the [dcm4chee installation page|http://www.dcm4che.org/confluence/display/ee2/Installation]. The dcm4chee-arr repository will automatically create tables for the arrdb database on first use below. If desired, \dcm4chee-arr--\sql\dcm4chee-arr-.ddl can be used to manually create them instead. Postgre ------- > psql arrdb -f /dcm4chee-arr--psql/sql/dcm4chee-arr-psql.ddl MySql ----- > mysql -uarr -parr arrdb < /dcm4chee-arr--mysql/sql/dcm4chee-arr-mysql.ddl Other databases --------------- TBD Configure, Run, and Test ------------------------ To configure and run the build without an IDE, follow the steps outlined below. Most of these steps are the titles of steps on the [installation page|http://www.dcm4che.org/confluence/display/ee2/Installation]. The installation page describes how to do them. Copy JBoss files to dcm4chee This copies JBoss runtime files from the JBoss folder to the dcm4che folder. Open a terminal window and cd to /dcm4chee--/bin install_jboss /jboss-4.2.3.GA Copy JBoss files to the audit record repository This copies dcm4chee-arr runtime files into dcm4chee, so the audit record repository can run inside dcm4chee. install_arr /dcm4chee-arr--mysql Optional: Adjust maximum allocation of heap memory Mac OSX and Windows x64 specific changes for the WADO service Test the installation Open a terminal window and cd to \dcm4chee--\bin run run.bat or run.sh starts up dcm4chee. Many lines of messages will go by as dcm4chee starts up. The messages are also being logged. It may take seconds or minutes to complete. Startup messages should end with an announcement that JBoss is running. [Server] JBoss (MX MicroKernel) [4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181439)] Started in 17s:49ms When dcm4chee is running, it will continue to produce messages. Common ones are announcements that dcm4chee has checked for orphan files. [FileSystemMgt2Service] Check file system group LOSSY_STORAGE for deletion of orphaned private files [FileSystemMgt2Service] Check file system group ONLINE_STORAGE for deletion of orphaned private files Confirm the installation has started cleanly by checking the logs at server/default/logs Confirm that there are no error messages in the log, and that any warnings are not harmful. For example: WARN -> (main) [org.jboss.jms.server.security.SecurityMetadataStore] WARNING! POTENTIAL SECURITY RISK. It has been detected that the MessageSucker component which sucks messages from one node to another has not had its password changed from the installation default. Please see the JBoss Messaging user guide for instructions on how to do this. Confirm that JBoss has announced that it has started Confirm that dcm4chee is producing more messages. Note that run.bat or run.sh does not return until dcm4chee shuts down. Type Ctrl-C to shut down dcm4chee. Starting dcm4chee again will erase the log file and replace it with new content. Optional: Login into web interface Optional: Login to JMX Console Test that you can log in and view these web pages. Optional: Change the default AE Title Optional: Configure image compression Optional: Modify web image cache directories Optional: Allow remote access These may be needed for production systems. They may be less useful for a development system. Setting up security should be part of this step. This is not yet written. Change passwords. Set up secure transportation. More... Test DICOM storage This tests that you can send images to dcm4chee with DICOM. You will need one or more DICOM images to do this. DICOM images contain tags with a lot of information about the patient, the study, the image, and so on. The dcm2txt utility from the dcm4che2 toolkit can display the tags. Send some images to dcm4chee via DICOM. The command below will send all the images in a folder to dcm4chee. This assumes You are using the dcmsnd utility from the dcm4che2 toolkit. dcm4chee is using the default AE title and port. Note that AE titles are case sensitive. dcmsnd is running on the same machine as dcm4chee. Open a terminal window and cd to /dcm4che-/bin dcmsnd DCM4CHEE@localhost:11112 Confirm that dcm4chee has received the images and can display information about them. In a web browser, go to http://localhost:8080/dcm4chee-web3/ Log in. By default, the user name is admin, and the password is admin. Confirm the search feature can find the study and display information about it. Confirm that images can be displayed. Test Object Retreival Optional: Shut down dcm4chee If start.bat or start.sh has not completed Type Ctrl-C Otherwise (You might need this if dcm4chee is running as a service.) Open a terminal window and cd to \dcm4chee--\bin shutdown -S -uadmin -padmin Check the log to confirm shutdown is complete No longer needed: Apply security patch A security issue was fixed as of 2.17.1. See [this post|http://forums.dcm4che.org/jiveforums/thread.jspa?threadID=4532&tstart=0] for more information. Optional: Install as a service This may be needed for production systems. It may be less useful for a development system. Next steps ---------- Most developers will go on to set up the Eclipse Development Environment, or an equivalent set up for NetBeans. This will allow them to run dcm4chee from the IDE. The Eclipse instructions are at http://www.dcm4che.org/confluence/display/ee2/Eclipse+Development+Environment dcm4chee is often used together with a viewing application. Usually dcm4chee runs on a server, and the viewer runs on user workstations. For a development system, dcm4chee and the viewer will probably both run on the same system. See [this page|http://www.dcm4che.org/confluence/display/ee2/Image+Viewing] for more information. Revision History ================ Original - 7/17/2012 Rev 2 - 7/20/2012 - Corrected errors connected with dcm4chee-web-sar-storescu-3.0.1.sar Rev 3 - 8/1/2012 - Corrected FOP, Maven versions, build.properties for dcm4chee-jboss-all.