Poison Center Service Registry Entry

Description

NPDS-WS-Client is a java interface for connecting to the US National Poison Center Data webservice. It was developed primarily by Dr. Jeremy Espino of the University of Pittsburgh Realtime Outbreak and Disease Surveillance Laboratory. It combines an axis-generated client library with JAXB parsing libary to send a request to NPDS, marshall the return data into a simple data collection, and return that collection to the requesting entity.

Poicondai-web is a simple set of java servlets that used the NPDS-WS-Client to supply Poison Control call center data... and display a time series using the Google Chart API. The calendar controls were sourced from the JQuery UI Javascript library. It gets it's count and polygon information through poicondai-util

Poicondai-util is a set of service classes that serves as a simple middle ware for fetching and caching counts, providing connections to the database with geolocation information, and fetching that information for any clients needing to use it (which right now is the poicondai-web)

Poicondai-loader is an XML/KML parser that is used to load the geolocation information into the database with the help of poicondai-util.

Location of source code

The source code for NPDS-WS-Client is located in the University of Pittsburgh SubVersion repository. The address is: https://svn.rods.pitt.edu/repos/phgrid/npds-ws-client

The source code for Poicondai-web is located in the same repository at: https://svn.rods.pitt.edu/repos/phgrid/poicondai-web

The source code for Poicondai-util is located in the phgrid repository at: https://phgrid.svn.sourceforge.net/svnroot/phgrid/poicondai-util

The source code for Poicondai-loader is located in the phgrid repository at https://phgrid.svn.sourceforge.net/svnroot/phgrid/poicondai-loader

Deployment instructions

Prerequisites:

    • A local build box with subversion, maven, and a servlet container installed.
    • The Service endpoint, username, and password for the service (contact Ken Hall of the NCPHI Grid Lab to get contact information for the NPDS)

Installation/Configuration:

    1. Acquire the Service endpoint, username, and password for the NPDS service.
      1. Check out the NPDS-WS-Client code from the repository.(svn co https://svn.rods.pitt.edu/repos/phgrid/npds-ws-client npds-ws-client)
      2. Configure the npds-client.properties file in the resources folder with the service endpoint, username, and password (located in trunk/src/main/resources directory).
      3. Move to the to the trunk directory Build the client using mvn package
      4. Test the client using the generated jar file (located in trunk/target)
      5. Once the tests succeed, install the jar file into the local maven repository by running mvn install
    2. Check out, configure, and build the Poicondai-util code from the repository.
      1. Check out the code from the repository (svn co https://phgrid.svn.sourceforge.net/svnroot/phgrid/poicondai-util poicondai-util)
      2. Configure the test and main properties database connection properties in the poicondai-util.filter-example.properties (located in the trunk directory) and rename the file poicondai-util.filter.properties
      3. Build the package using mvn package.
      4. Test the build using the resulting jar (located in the target directory)
      5. Install the package into the repository using mvn install
    3. Check out, configure, and build the poicondai-loader, and use it to load the data into the database (unless polygon data has already been loaded)
      1. Check out the code from the repository (svn co https://phgrid.svn.sourceforge.net/svnroot/phgrid/poicondai-loader poicondai-loader)
    4. Build the package using mvn package (note, poicondai-util must be built and installed into the mvn repository for this to be done)
    5. Copy the two kml files from the resource directory into the target directory and invoke the jar to load them into the database
        1. (java -cp poicondai-loader-with-resources.jar gov.cdc.ncphi.poicondai.dataloader.KMLCountyPolygonLoader gencounties.kml)
        2. (java -cp poicondai-loader-with-resources.jar gov.cdc.ncphi.poicondai.dataloader.KMLZip5PolygonLoader zipLarge.kml)
      1. Check the database to see if data has been loaded
    6. Check out, build, and install the Poicondai-web code from the repository
      1. Check out the code (svn co https://svn.rods.pitt.edu/repos/phgrid/poicondai-web poicondai-web)
    7. Build the web project using the mvn package command
    8. Deploy the resulting war file (located in the target directory) on the servlet container.

Link to the Poicondai-web demo

There is a simple Poicondai-Web demo here