randonode it conference sept 17, 2008. 9/17/08 randonode it conference 2 development environment...

43
RandoNode IT Conference Sept 17, 2008

Upload: anne-bell

Post on 04-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

RandoNode IT Conference

Sept 17, 2008

Page 2: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 2

Development Environment Setup• System Environment Windows OS

– JAVA_HOME - where the SUN jdk(development and runtime is installed).

Page 3: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 3

Cont– CTSU_HOME – where the

meta data files are installed.

Page 4: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 4

CTSU Provided Classes• The interface classes

• The framework classes

• The ODM classes that represent meta data and clinical data

• The domain classes and xml files for persisting using hibernate

• The hibernate persist classes

• The web service classes

Page 5: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 5

Group Implementation Classes• A main class that inherits from RanodeNodeApp. This

class is called from the CTSU provided web service class to obtain a object to handle the OPEN requests.

• Class(es) that inherit(s) from RegistrationCore which contains the business logic for the web services provided by the groups’ RandoNode.

Page 6: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 6

Install RandoNode Starter Kit• Unzip the files

• Create project from Eclipse

• Build

• Deploy

Page 7: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 7

Install Project to Eclipse Workspace

Page 8: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 8

Create Project Using build.xml

Page 9: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 9

Cont

Page 10: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 10

Build Project Using build.xml

Page 11: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 11

Deploy RandoNode War• The war from the build file is created in deploy directory

C:/SandBox/EclipseWorkspace3.3/RandoNode/deploy/RandoNode.war

• Copy RandoNode.war to your server deployment directory.

• Using Jboss as an example, the war is copied to C:\Servers\jboss-4.0.5.GA\server\default\deploy where c:\Servers/jboss-4.0.5.GA is the jboss home directory.

• Using tomcat as an example, the war is copied to C:\Servers\apache-tomcat-5.5.20\webapps where c:\Servers\apache-tomcat-5.5.20 is the tomcat home directory.

Page 12: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 12

isAvailable Interface• Input

– OpenRequest

• Output– OpenResponse

• OpenResponse.responseCode

– READY

– NOT_READY• OpenResponse.responseText : please fill in the reason if

RandoNode is not NOT_READY to accept request

Page 13: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 13

Example to call isAvailable• Modify the IsAvailable.java located in

c:/SandBox/EclipseWorkspace3.3/RandoNode/src/com/westat/ctsu/open/node/example– Change to your IP address at line 74

• Modify the return value in c:/SandBox/EclipseWorkspace3.3/RandoNode/src/com/westat/ctsu/open/node/RandoNode.java.– Change OpenResponse.setResponseCode between READY

and NOT_READY

• Build

• Deploy

• Test

Page 14: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 14

RandoNode Logging• The log files are located in

CTSU_HOME/RandoNode/logs

Page 15: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 15

CDISC ODM..• Standard for interchange of data collected during the

course of clinical trials.

• Handles– study meta data.– study administrative data– study clinical data.

Page 16: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 16

ODM XSD Metadata Diagram

Page 17: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 17

ODM XSD Clinical Data Diagram

Page 18: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 18

ODM XSD/Study Metadata MappingODM Metadata Element Study

Study Protocol Number

GlobalVariables.StudyName Protocol Number

GlobalVariables.StudyDescription Protocol Title

MetaDataVersion.StudyEventDef Study Event

MetaDataVersion.FormDef Form

MetaDataVersion.ItemGroupDef Module

MetaDataVersion.ItemDef Question

MetaDataVersion.CodeList Question’s valid values

Page 19: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 19

Study Form E1505

Page 20: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 20

Study Form Translated Into ODM Metadata

Page 21: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 21

ODM XSD/Study Data MappingODM Clinical Element Study Data

AdminData.User Administrative user for this study event.

AdminData.Location Location of the user or the sites associated with this study event.

ClinicalData.SubjectData Key information for a subject data (patient).

ClinicalData.FormData Study Form data

ClinicalData.ItemGroupData Modules data

ClinicalData.ItemData Question data.

Page 22: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 22

Fill In Study Using OPEN

Page 23: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 23

Study Data Translated Into ODM

Page 24: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 24

RandoNode Metadata Diagram

Page 25: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 25

RandoNode ClinicalData Diagram

Page 26: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 26

RandoNode Configuration • Setup system environment variable CTSU_HOME

• Create repository for meta data file under CTSU_HOME/RandoNode/meta

• Install Application.xml under CTSU_HOME/RandoNode/config

Page 27: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 27

Setup CTSU_HOME on Windows

Page 28: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 28

Application.xml Example• <Applications>

• <!-- add in for RandoNode web service project -->

• <Application Name="RandoNode" Package="com.westat.ctsu.open.node">

• <!-- Name of the group's RandoNode called by the web method. -->

• <GroupRandoNodeApp>RandoNodeECOG</GroupRandoNodeApp>

• <!-- the package of the group's RandoNode -->

• <GroupRandoNodePackage>com.ECOG.ctsu.open.node</GroupRandoNodePackage>

• </Application>

• </Applications>

Page 29: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 29

Example Code To Read Application.xmlKAppConfig kAppConfig =

KAppConfig.getInstance("RandoNode");

String groupRandoClass = kAppConfig.get("GroupRandoNodeApp",

"RandoNodeECOG");

String groupRandoPackage = kAppConfig.get("GroupRandoNodePackage", "com.ECOG.ctsu.open.node");

Page 30: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 30

Extract Metadata Options• Get all the questions within a form

– MetaDataUtil.itemMap

• Get question based on question’s CDE public – MetaDataUtil.getItem(String cdePublicId)

• Get all modules within a form– MetaDataUtil.itemGroupMap

• Get question’s valid value– Item.codeListMap

• Get all the valid values within a form– MetaDataUtil. codeListMap

Page 31: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 31

Example To Extract Metadata• Run MetadataExtract.java within Eclipse

• Console output the extraction result with different options.

• Modify MetadataExtract.java (Exercise time )

Page 32: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 32

Extract Clinical Data Options• Get administrative users

– ClinicalDataUtil.userMap– ClinicalDataUtil.getUser(String userCtepId)

• Get administrative locations– ClinicalDataUtil.locationMap– ClinicalDataUtil.getLocation(String locationCtepId)

• Get all the form response data– ClinicalDataUtil.itemDataMap

• Get response data based on question’s cde public id– ClinicalDataUtil.getItemData(String cdePublicId)

• Get response data based on question’s long name– ClinicalDataUtil.getItemDataByName(String longName)

• Get the override approval list– ClinicalDataUtil.overrideApprovalList

Page 33: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 33

Example To Extract Clinical Data• Run ClinicaldataExtract.java

• Extraction output with different options.

• Modify ClinicalDataExtract.java.

Page 34: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 34

doCredential• Call

– Credit group is the protocol lead group– AND

– When the protocol lead group does not maintain person roster and/or site roster within RSS

– AND– Lead group requests the call from OPEN before the registrar fills

in the EC form

Page 35: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 35

doCredential Interface• Input

– OpenRequest– OpenRegistration

• Output– RegistrationResponse

• OpenResponse.responseCode

– PROCESSED

– EXCEPTION• OpenResponse.responseText : optional, but highly recommended• OpenRegistration.status

– SUCCESS

– FAILURE

Page 36: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 36

doValidate• Ravi please fill in.

Page 37: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 37

doRegister • Call

– EC is filled and response passed the validation check

Page 38: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 38

doRegister Interface• Input

– OpenRequest– OpenRegistration– OdmData

• Output– RegistrationResponse

• OpenRegistration.status • OpenRegistration.eligibility• OpenRegistration.treatmentAssignment • OpenRegistration. ineligibilityReason

• What about the groupRegistration

Page 39: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 39

Metadata Update • Assumption: an active protocol form is modified to add in

a new question– The form is updated with a new version date– The form’s meta data is generated and saved to OPEN DB– RandoNode requests the meta data from CEWS when a

registration request is sent using the new form.

• RandoNode starter kit software is not affected.

• May need to update your business logic.

Page 40: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 40

WSDL changes• Install the new RandoNode.jar to your lib directory.

• Jar is versioned with MANIFEST.MF

• Example:– Add an attribute(associate) to OpenRegistration class– The wsdl is updated with a new version number.– To use the added attribute, OpenRegistration.associate to get

the value of this attribute.

• How to check the jar version– Read manifest.mf within the jar– Deploy the war with the new RandoNode.jar, read manifest.mf

under DEPLOY/RandoNode/WEB-INF/classes

Page 41: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 41

WSDL Migration Exercise• Replace your RandoNode.jar with the updated

RandoNode.jar. Note: the jar version is different.

• Rebuild the RandoNode project

• Run DoRegister with previously WSDL data file and current WSDL data file.

Page 42: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 42

Questions?

Page 43: RandoNode IT Conference Sept 17, 2008. 9/17/08 RandoNode IT Conference 2 Development Environment Setup System Environment Windows OS –JAVA_HOME - where

9/17/08 RandoNode IT Conference 43

Contacts• Ravi Rajaram – OPEN Development Manager

[email protected]– (301) 294-2045

• Lucille Patrichuk – Transition Manager– [email protected]– (240) 314-2572

• Jerry Wernimont – CTSU Associate Director - IT– [email protected]– (240) 314-2396

• Steve Riordan – CTSU Project Director– [email protected]– (301) 517-4045