svn checkout https://www.nitrc.org/svn/hid/schema/tags/release-2.2
ant db-integrity-check
[groovy] The necessary static data to ensure correct operation seems to exists in your database!
svn checkout https://www.nitrc.org/svn/hid/clinical/tags/release-2.2
svn status svn update
# The directory where your Tomcat application server is installed tomcat.home=/data1/opt/tomcat-4.1.24 # servlet jar filename # In Tomcat v 5.x the servlet jar file is for some reason renamed # from servlet.jar to servlet-api.jar. If you are using Tomcat # version 5.x use servlet-api.jar or servlet.jar for earlier # Tomcat versions servlet.jar.name=servlet.jar # The web application name for your HID web app installation. # For most cases the default will work fine. webapp.name=clinical
$ ant clean-all $ ant bootstrap $ ant
ant db-integrity-check
$ ant clean $ ant
$ ./$TOMCAT_HOME/bin/startup.sh
$ant install-hid-client
$HID_CLIENT_HOME/bin directory and execute rls_tool.sh
The example below registers the logical image location pointers in the (default) HID postgres database hidprdp
at host localhost on port 5432 as having corresponding physical locations on the GridFTP server at
perception.ucsd.edu
using myproxy user bozyurt on the default RLS server rls://rls1.nbirn.org:39281. The default
database user postgres is used to retrieve the logical names from the database. The script prompts for
the passphrase of the myproxy user (here bozyurt) to retrieve a valid certificate as used to authenticate with the RLS server.
rls_tool.sh -c register-db-content -dbpwd pwd -g perception.ucsd.edu -u bozyurt
rls_tool.sh Usage: RLSTool -cOPTIONS -c <command> [register-db-content|register-from-filelist] Common OPTIONS -g <gridftp-host> The the gridftp hostname for physical locations where the logical names are mapped to -u <user-name> Your myproxy user name -r <RLS-server-url> (default: rls://chi-vm-4.isi.edu:39281) -m <myproxy-server-host> (default: certs.nbirn.org) OPTIONS for register-db-content command -dbhost <db-host> the Postgres database server host name (default: localhost) -schema <schema> the Postgres database schema name (default: hidprdp) -dbport <port> the Postgres database connection port (default: 5432) -dbuser <dbuser> the Postgres database user for connection (default: postgres) -dbpwd <pwd> the Postgres database user's password OPTIONS for register-from-filelist -f <logical-file-name-list>
ant admin-tool
To prepare your database for image viewing support, select Object Type Registration for ImageViewer tab. Step-by-step instruction are available, if you press Help button. In this panel, registration of structural (t1 and t2) DICOM tar files fo a selected experiment in your image storage for image previewing via the HID web application is done.
To prepare your database for image download support, select Object Type Registration for download tab. Step-by-step instruction are available, if you press Help button. You will assign data types to raw data logical names in your HID, using this panel.
svn checkout https://www.nitrc.org/svn/hid/clinical/tags/release-x.y
svn checkout https://www.nitrc.org/svn/hid/clinical/tags/release-2.2
# The directory where your Tomcat application server is installed tomcat.home=/data1/opt/tomcat-4.1.24 # servlet jar filename # In Tomcat v 5.x the servlet jar file is for some reason renamed # from servlet.jar to servlet-api.jar. If you are using Tomcat # version 5.x use servlet-api.jar or servlet.jar for earlier # Tomcat versions servlet.jar.name=servlet.jar # The web application name for your HID web app installation. # For most cases the default will work fine. webapp.name=clinical
$ ant clean-all $ ant bootstrap $ ant
users.xml file
to connect to your database and configure your web based user/database/application
configuration with sensible default values.
$ ant clean $ ant
$ $TOMCAT_HOME/bin/startup.sh
$ $TOMCAT_HOME/bin/shutdown.sh
$ ant javadoc
By default download manager is available when your database tables (nc_dataobjecttype, nc_dataobject and for project download management, nc_dataarchive tables) are properly populated.
Email notification for the download jobs can be setup, if an email server is available, using the application configuration console ( See for details).
The default recognized file object types are ANALYZE and Eprime located in locally accessible file system for the deployed HID web app. More file/data object types can be added to the default configuration file $CLINICAL_HOME/conf/clinical-conf.xml BEFORE the first build and deployment.
During the bootstrapping where the minimal users.xml file is generated, the HID database is populated with defaults using the $CLINICAL_HOME/conf/clinical-conf.xml file for birn profile or $CLINICAL_HOME/conf/local-clinical-conf.xml file for local profile.
$ ant admin-tool
ant data-object-type-config
ant install-hid-client
ant import-fsa-metadata
Usage: FSAImportClient -u <webUser> -p <webUserPwd> -x <xcedeDir> -a <shortAnalysisName> \
-s <snapshotID> [-host <HID-web-app-host>] [-port <port-number>] \
[-context <application-context>] [-useSSL] [-mrml]
For example:
fsa_import.sh -u b -p b -a FreeSurfer -s 0001 \
-x /home/bozyurt/work/fsanalysis/fBIRNPhaseII__0010/Data/001029291693/scanVisit__0010__0002/MRI__0001/t1/Analysis/FreeSurfer__0010__0001 \
-host localhost -port 8080
-x xcedeDir
XCEDE directory contains XCEDE XML files for the Freesurfer (or other) summary
derived data including provenance information (provenance.xml). Also the actual
derived data is included as a tarball (.tgz or tar.gz) in this directory.
-host <HID-web-app-host>
(Default: localhost) e.g. loci.ucsd.edu
-port <port-number>
(Default: 8080)
-context <application-context>
(Default: clinical)
-useSSL
use this option if the web service provider HID web app is supporting only HTTPS.
-mrml
also upload Slicer MRML files included in the data dir to be uploaded.
ant remove-fsa-from-db
$ ant install-certificate
ant install-hid-client
Usage: XCEDE2ServiceCLIClient -u <webUser> -p <webUserPwd> \
-x <xcedeAssessmentFile> -i <protocolID> -v <protocolVersion> \
[-host <HID-web-app-host>] [-port <port-number>] \
[-context <context>] [-useSSL]
For example:
import_as.sh -u b -p b -i "Subjects screening protocol" -v 1 \
-x ses.xcede \
-host localhost -port 8080
-i protocolID
Corresponding Protocol ID from HID nc_protocol table
-v protocolVersion
Corresponding Protocol Version from HID nc_protocol table
-x xcedeAssessmentFile
full path to the XCEDE2 assessment file
-host <HID-web-app-host>
(Default: localhost) e.g. loci.ucsd.edu
-port <port-number>
(Default: 8080)
-context <application-context>
(Default: clinical)
$ ant -projecthelp Buildfile: build.xml Main targets: allTests Runs idempotent automatic tests as used by continuous integration. Please create and setup conf/test.properties file before running the unit tests bootstrap does minimal configuration and prepares the database for application clean deletes the contents of tomcat/webapps/clinical/ and struts_config.xml clean-all cleans up your tomcat webapps/clinical and all the generated configuration files (struts_config.xml, users.xml and clinical.properties) data-object-type-config Manages data object types (types of the downloadable data) stored in the database db-integrity-check Checks the primary database for static data integrity delete-fsa-metadata removes Freesurfer analysis metadata from the database. Make sure there is no freesurfer analysis in the database before attempting this! import-fsa-metadata imports Freesurfer analysis metadata into database install-certificate installs SSL certificate for WS server as trusted install-hid-client installs HID Web service clients javadoc Generate JavaDoc API docs remove-fsa-from-db Given a Freesurfer XCEDE dataset removes it from the database Default target: compile
$ ant install-certificate
$ openssl genrsa -des3 -out server.key 1024
$ openssl req -new -key server.key -out server.csr
$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
/usr/local/apache
$ cp server.crt /usr/local/apache/conf/ssl.crt $ cp server.key /usr/local/apache/conf/ssl.key
keytool -genkey -alias tomcat -validity 400 -keyalg RSA
Important: Also comment out the Connector for port 8080 in your server.xml file so that your tomcat only serves via HTTPS protocol.
After that start your tomcat and point your browser to https://localhost:8443/ for test.keytool -export -alias tomcat -file tomcat.cer
keytool -import -alias tomcat -keystore $JAVA_HOME/jre/lib/security/cacerts -file tomcat.cer
First you need to copy $CLINICAL_HOME/lib/junit.jar to $ANT_HOME/lib directory to be able to use JUnit for unit testing. Then you need to copy $CLINICAL_HOME/conf/test.properties.example file to $CLINICAL_HOME/conf/test.properties and modify this file according to your local system configuration. Please see below for an example test.properties file.
After that, you run (in $CLINICAL_HOME directory)$ ant run-basic-tests
Or run
$ant run-tests
----------------------------------------- # necessary for running ant run-basic-tests mbirn.dbid=<database-id-as-specified-in .users.xml=""> mbirn.dburl=jdbc:oracle:thin:@fmri-gpop:1521:orcl1 mbirn.user=ucsd_fmri mbirn.pwd=<a-password> mbirn.users_file=/opt/tomcat-4.1.24/webapps/fbirn_clinical/WEB-INF/users.xml # the web user defined as admin in users file pointed by the mbirn.users_file property above mbirn.admin_user=admin mbirn.admin_pwd=<admin-pwd> # for SRB Jargon tests # points to your .srb directory srb.user_info_file=/home/bozyurt/.srb # you can leave the next 3 properties unchanged srb.series_path=/home/BIRN/Human/Clinical/UCSD/000800156805/Visit_001/Study_0001/RawData/005.ser srb.local_series=/tmp/000800156805 srb.container_path=000899127551_Visit_001_Study_0001_005_ser # not used currently #mbirn.owner=ucsd_fmri #mbirn.moduser=ucsd_fmri #mbirn.cacheroot=/home/bozyurt/dev/java/fbirn_clinical/bin/test # For tests adding and removing data to the datase # For basic tests you can skip this portion of the configuration file # for subject/visit management session facade testing # This test is not included in basic test suite # you need to change visit.experimentID to point to the UNIQUEID column value in the nc_experiment # database table for the experiment this visit will be associated # Also both visit.segment.protocolID and visit.segment.protocolVersion must correspond to the column values # PROTOCOLID and PROTOCOLVERSION in the NC_PROTOCOL table, respectively. subject.subjectID=UCSD23456789 visit.subjectID=UCSD23456789 visit.experimentID=7 visit.visitType=clinical visit.description=just a test visit visit.segment.description=test segment visit.segment.protocolID=UCSD_ADRC_BATTERY visit.segment.protocolVersion=1 # for visit update test visit.new_description=New Visit description visit.segment.new_description=New segment description
A list of changes in recent versions
2.1.1 :(7-Oct-2008)
- Added SOAP web services for Slicer Freesurfer data support using a RESTFull
HID proxy server.
- Bug fixes and small enhancements.
2.1 :(26-Aug-2008)
- Added XCEDE2 based assessment metadata and instance data import web service
support Tablet based assessment entry system.
- Replaced wizard based clinical assessment query builder with Web 2.0 style
dynamic single page/tab query builder interface.
- Added metadata driven derived data query builder functionality with Web 2.0 UI.
- Added SSL support for Freesurfer derived data import web client service.
- Added new options for CSV exporting functionality for one-subject-per-line or
one-visit-per-line layouts and including/excluding derived data in the export.
- Added distributed caching with event notification to sync their cache state
between federated web apps to optimize performance.
2.0.2 :(10-Apr-2008)
- Added database based user/database and application management capability with
web based user interface.
- XCEDE2 based Freesurfer derived data import web service and client application.
2.0.3 :(7-Jul-2008)
- Updated documentation and minor fixes.
- Extended image download functionality.
2.0 :(11-Oct-2007)
- Added project-wise and fine grained download management with shopping chart
for selecting image and clinical data to download.
- More AJAX based usability improvements including dynamic scatter/regression
plots , suggesters for some input fields etc.
- Public login operation for public data sharing.
1.7 :(18-Apr-2007)
- Integrated descriptive statistics and bivariate regression/plotting
support for data exploration.
- Integrated job scheduler for batch (query) jobs with AJAX based
notification and monitoring system. Currently, the builtin batch query
job allows you to get all the clinical assessment data for the user
selected assessment of all the subjects returned by an assessment
query.
- An AJAX based reusable/extensible context sensitive help system.
- Internet Explorer (tested on IE 7) is supported besides Mozilla based
browsers.
- CALM generated forms are fully integrated with HID web app at Struts
code generation step, fully automating new assessment form additions.
- Some cosmetic and bug fixes.
1.6.1 :(18-Apr-2006)
- extended data access layer of the system introducing Abstract
Factory pattern to handle different type of databases
interchangeably at runtime. Both Oracle and Postgres is supported
right out-of-the-box.
- multi-site query support between postgres and oracle sites.
- updated connection pool to detect stale Postgres connections in
the pool.
- some bug fixes
1.6.0 :(5-Apr-2006)
- added subject/experiment contents in XCEDE form secure Web Service
and client.
- Answer delete functionality with multi-answer questions.
- Various bug fixes and code refactorings.
1.5.3 : (28-Mar-2005)
- added NAART and SES clinical assessments.
- clinical assessment cover page mandatory fields have
default values now.
- When last page of the online assessment is submitted clinical
returns to the page you started adding/editing assessment.
- code refactorings.
1.5.2 : (25-Jan-2005)
- multiple answer question, unanswered question support in GAME
- A majority of the fBIRN Phase II assessments are hooked with GAME
- Enhanced display logic for multi-valued score results displays
- Remote (security) administration support (client/server model over
custom XML-RPC) for dynamic user administration of the web app (see
$CLINICAL_HOME/REMOTE_ADMIN_SETUP_GUIDE.txt)
- Various bug fixes and code refactorings.
1.5.1 : (4-Oct-2004)
- streamlined GAME with multiple page online clinical assessment
support.
- Three clinical assessments (Quick Mood scale, ASI and BDI) is
hooked to the visit/segment management section
- Supports the new uniqueids ( the latest changes to the BIRN DB schema
- A simple framework to facilate scripting of data access layer to
build data maintenance scripts in Java (clinical.tools.maintenance)
1.5 : (20-Sept-2004)
- Ability to save queries and use it later as a template.
- Score ranges and enumerations in query building as an aid and also
for validation
- Supports the updated BIRN DB schema
1.4.1 : (15-July-2004)
- Fixed and enhanced image series caching system for SRB 3.x Scommands
and new SRB directory hierarchy
- Fixed hash key problem with MultiSite query association tables. Now
more than one two-database association can be handled correctly.
1.4 : (23-June-2004)
- Added Postgres support
- Streamlined the installation process
1.3 : (22-May-2004)
- Added generic assessment management engine (GAME) support.
- Enhanced the stream-lined mediator
- Minor UI enhancements
- Added Quick Mood Scale Assessment management support ( for fBIRN),
which can be accessed from the Subject Management section. Select a visit
with Quick Mood scale and press Edit to edit a Quick Mood scale. To add
a Quick Mood scale, press 'Add Quick Mood Scale' button.
1.2a : (18-Mar-2004)
- Added mediated assessment and subcortical support. The ontology is
emulated by a simple mapping file (as_var_map.xml)
- Added multiple database parallel queries support with a better
response time than the current version of mediator provides.
- Added SiteID to the query summary result and as a variable to the
exported CSV files.
1.1 : (27-Feb-2004)
- Multiple database connection pool support to select the database to
connect during login. (users.xml structure is changed to accommodate this)
- SOAP based integration support with the Query Atlas
- Query results are grouped by visit and segment now.
- Enhancements for portal integration including functional portal SRB browser
integration and almost functional (functional on HID web app end) portal stats
integration.
1.0 : (12-Feb-2004)
- Synchronized Morph-BIRN UI codebase with the FIRST-BIRN UI;
- Regenerated data access object (DAO) and value object (VO) code for
the latest FIRST-BIRN/Morph-BIRN schema;
- Added (optional) details on the assessments and demographic information
for the visits of a subject to the subject-visit-detail screen.
- State cleanup during an error while using the query wizard works
correctly now.
- Added failback mechanism for representative MRI slice image generation,
in case SRB is not responding.
- Now you can use wildcard operator * for all query variable types,
to retrieve every subject's data for that query variable.
- Added external executables (for Linux) for MRI image series retrieval
and DICOM to AFNI conversion setup.