Rebuild dcm4chee-web
Build dcm4chee-web 2.15.0, 2.16.2 or 2.17.0
Prerequisites
- Subversion (SVN), one of the following client:
- Subversion - The core system (server, client, libs)
- Subversive - SVN Team Client (Eclipse plugin)
- TortoiseSVN - Handy SVN client for Windows systems
- JDK 5 or higher (Sun or OpenJDK)
- Ant 1.6 or higher
Getting the Source
To check out the code, first install Subversion and either checkout the trunk branch using a graphical Subversion client (such as TortoiseSVN) or directly from the command line using the command:
svn co https://svn.code.sf.net/p/dcm4che/svn/weasis/weasis_dcm4chee/trunk/2.17.0 weasis-dcm4chee-2.17.0
This command will copy the current development code (the "trunk") into a local directory named weasis-dcm4chee-2.17.0.
Note: Sources can also be browsed online
Building dcm4chee-web.war
- Go in the weasis-dcm4chee directory
- Compile and make the dcm4chee-web.war (in weasis-dcm4chee/dist folder)
ant dist
- Modify the permission in /dcm4jboss-web/src/etc/conf/dcm4chee-web/folder.permissions or in server/default/conf/dcm4chee-web if dcm4chee is already installed
folder.*=edit,move,delete,view,*export,edit.newStudyUID,mergepat,study_permission,study_permission.free_role_action,query_has_issuer folder.*export=export_tf,export_xds
...
folder=WebUser(send,view);DatacareUser(edit,move,delete,export_xds,view);WebAdmin(*)
- Place the dcm4chee-web.war and the weasis.war (see Building Weasis from source) to the deploy folder of dcm4chee
Rebuild dcm4chee-web from any version (Draft)
1. Make a project to rebuild dcm4chee-web
- Download a dcm4chee package (any db package, ex. dcm4chee-2.14.7-mysql.zip)
- Create new Java project (see example of dcm4chee-web 2.17.0, Eclipse project)
- Extract dcm4chee-web.war
- Link required binaries (commons-codec.jar,dcm4che.jar,dcm4chee-ejb-client.jar,jboss-j2ee.jar,servlet-api.jar,slf4j-api-1.6.1.jar) to the project from default/lib/ or from jboss 4.2.3 (if not installed in dcm4chee)
- Link required binaries (maverick.jar and dcm4chee-web.jar) from ddcm4chee-web/WEB-INF/lib/
- Add viewer.gif in dcm4chee-web/images
- Add launcher.properties in dcm4chee-web/viewer
- Add java sources in src folder
- Move the content of the WEB-INF/classes in etc/message
- Copy build.xml and modify it if necessary
2. Replace in maverick.xml:
3. Add text for Weasis button<controller class="org.dcm4chex.archive.web.maverick.FolderSubmitCtrl" />
by
<controller class="org.dcm4chex.archive.web.maverick.FolderSubmitCtrl2" />
- in dcm4chee-web/translate.dtd
<!ENTITY ViewSelectedEntities "View selected Entities in Weasis">
- in dcm4chee-web/de/translate.dtd
<!ENTITY ViewSelectedEntities "Ausgewählte Entitäten in Weasis sehen">
- in dcm4chee-web/fr/translate.dtd
<!ENTITY ViewSelectedEntities "Visualiser la sélection dans Weasis">
- in dcm4chee-web/jp/translate.dtd
<!ENTITY ViewSelectedEntities "View selected Entities in Weasis">
4. Modify dcm4chee-web/folder-tpl.xsl
- add after <xsl:param name="folder.delete" select="'false'" />
<xsl:param name="folder.view" select="'false'" />
- add after <xsl:if test="$folder.delete='true'"> … </xsl:if>
<xsl:if test="$folder.view='true'"> <td width="40"> <input type="image" value="View" name="view" src="images/view.gif" alt="view" border="0" title="&ViewSelectedEntities;" onclick="return confirm('&ViewSelectedEntities;?')"> <xsl:if test="total <= 0"> <xsl:attribute name="disabled">disabled </xsl:attribute> </xsl:if> </input> </td> </xsl:if>
5. Rebuild WAR with "ant dist" and get dcm4chee-web.war in dist folder
6. Modify the permission in /dcm4jboss-web/src/etc/conf/dcm4chee-web/folder.permissions or in server/default/conf/dcm4chee-web if dcm4chee is already installed
folder.*=edit,move,delete,view,*export,edit.newStudyUID,mergepat,study_permission,study_permission.free_role_action,query_has_issuer folder.*export=export_tf,export_xds
...
folder=WebUser(send,view);DatacareUser(edit,move,delete,export_xds,view);WebAdmin(*)
7. Place the dcm4chee-web.war and the weasis.war (see Building Weasis from source) to the deploy folder of dcm4chee