Download presentation
Presentation is loading. Please wait.
Published bySheena Grant Modified over 9 years ago
1
open source administration software for education 2012 User Conference April 22-24, 2012 – Atlanta, Georgia “Together Toward Tomorrow” Chris Denne, Colorado University Lin-Long Shyu, Indiana University, System Analyst/Developer Neeraj Khanolkar, Iowa State University, April 26 2012, 1-3PM
2
2012 KCC User Conference - “Together Toward Tomorrow” Customization Approaches User / Administrator Customizations Available via the application UI Maintainable/Persisted via Institutional data Developer Code based Integration Approach : Maven War Overlay
3
2012 KCC User Conference - “Together Toward Tomorrow” User Customizations User / Administrator Customizations Maintenance artifacts Parameter Maintenance Workflow route path nodes & rules KIM
4
2012 KCC User Conference - “Together Toward Tomorrow” Customization Provide configuration for institutional customization Extend Override : Override class (same package, and same class name), method. Use Maven overlay Maven What is it?: build, dependency, project management tool Good : Dependency Management, many plugins, works with Eclipse Improvement required : Poor documentation, rigid, high learning curve, not all plugins well tested. Maven/war plugin/Overlay shares common resources across multiple web applications. Merges between an original war and other code/files that you develop. KC uses maven Confluence page Link : https://wiki.kuali.org/display/KRADOC/KC+Customization
5
2012 KCC User Conference - “Together Toward Tomorrow” Use Case : Services, struts actions, and forms Spring : Bean customization, mostly services. CustomSpringBeans.xml : overrides kc spring beans adds new beans. This file name is added to kc-bootstrap-springbeans.xml. Struts-config : action and form classes. struts-custom-config.xml : overrides kc's struts configuration adds new struts configuration. This file is defined in web.xml. /WEB-INF/struts-config.xml, /WEB- INF/struts-custom-config.xml
6
2012 KCC User Conference - “Together Toward Tomorrow” Use case : DD, rule, authorization DD : modify bo properties. Rule class Authorization class Defined in CustomSpringBeans.xml. org/kuali/kra/custom/datadictionary
7
2012 KCC User Conference - “Together Toward Tomorrow” Use case : Web Contents & Bo Web content - JSPs, tags, images The maven "overlay" can overlay the customized web content over kc_project. BO : Extends BO is complicated Override Bo Use rice extended attributes KC Custom Data
8
2012 KCC User Conference - “Together Toward Tomorrow” Configuration Kc-bootstrap-springbeans.xml Web.xml /WEB-INF/struts-config.xml, /WEB-INF/struts-custom- config.xml CustomSpringBeans.xml org/kuali/kra/datadictionary org/kuali/kra/datadictionary/docs org/kuali/kra/custom/repository-custom.xml Message : ApplicationResources, CustomApplicationResources
9
2012 KCC User Conference - “Together Toward Tomorrow” Check out KC_PROJECT and install war & jar to local maven repository install kc_project to local maven repository Check out : https://svn.kuali.org/repos/kc -> branches-> kc_project_bootcamp In command line, go to checked out project directory and execute following mvn commands : mvn generate-sources mvn -Dmaven.test.skip=true install mvn jar:jar mvn install:install-file -Dpackaging=jar -DgroupId=org.kuali.kra - DartifactId=kc_project -Dversion=4.0 -DpomFile=pom.xml -Dfile=target/kc_project- 4.0.jar mvn jar:test-jar mvn install:install-file -Dpackaging=jar -DgroupId=org.kuali.kra - DartifactId=kc_project_test -Dversion=4.0 -DgeneratePom=true - Dfile=target/kc_project-4.0-tests.jar
10
2012 KCC User Conference - “Together Toward Tomorrow” Steps to create KC_custom project check out from svn Or Create kc_custom from scratch Check out : https://svn.kuali.org/repos/kc -> custom Apply patch custom40-base.patch Customization configurations files not included in R2 do customization in kc_custom create war file for kc_custom with the overlay of kc_project mvn -f pom_war.xml -U clean compile war:war
11
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 1 : Override/extend Service Extends MeetingServiceImpl from Foundation Override “addOtherAction” Call super. addOtherAction(newOtherAction, committeeSchedule) Add System.out.println to verify it Need to override the meetingService in CustomSpringBeans.xml
12
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 1 : Steps to verify Central Admin -> Post-Submission Compliance -> schedules In ‘Committee Schedule Lookup’ page Schedule Date From : 04/01/2012 Schedule Date To : 04/30/2012 Click ‘search’ button Click ‘edit’ link of the retrieved item. In Meeting page Add ‘other action’ Check console to see if the “message” you added is displayed.
13
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 1 : Solution Extends MeetingServiceImpl public class MeetingServiceImpl extends org.kuali.kra.meeting.MeetingServiceImpl CustomSpringBeans.xml
14
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 2 : Override Struts Action Extends MeetingManagementAction Override “start”, and add System.out.println to verify it. Need to override struts “action” in strut-custom- config.xml Override “MeetingActionsAction” class copy/paste this class from foundation to kc_custom in the same packge. Add System.out.ptintln in ‘generateAgenda’ method
15
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 2 : Steps to verify Central Admin -> Post-Submission Compliance -> schedules In ‘Committee Schedule Lookup’ page Schedule Date From : 04/01/2012 Schedule Date To : 04/30/2012 Click ‘search’ button Click ‘edit’ link of the retrieved item. Navigate to Meeting actions page In ‘Agenda’ tab, click ‘submit’ button to generate agenda. Check console to see if the “message” you added is displayed.
16
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 2 : Solution Struts-custom-config.xml
17
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 3 : Override DD and message Extends ProtocolDocumentRule and add a system out message “Custom ProtocolDocumentRule “ in “processCustomSaveDocumentBusinessRules” Change ProtocolDocument.xml (DD) to reference the new rule class Change Protocol.xml to use ‘Custom Title” for “"Protocol-title“ label. Change message in CustomApplicationResources.properties error.investigator.notFound Add “ ApplicationResources, CustomApplicationResources ” to local kc-config.xml Restart jetty
18
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 3 : Steps to verify In Researcher -> Create Irb Protocol Enter required fields Click ‘save’
19
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 3 : Solution Change ProtocolDocument.xml (DD) to reference the new rule class. Change message in CustomApplicationResources.properties error.investigator.notFound=A Principal Investigator must be assigned to the Protocol - custom. Add “ ApplicationResources, CustomApplicationResources ” to local kc-config.xml
20
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 4 : Unit test Create AddDisclosureReporterUnitRuleTest by extending foundation’s class. Override ‘testMissingUnitNumber’ Create a new test dummy method. Add system.out.println to verify it. Run junit test.
21
2012 KCC User Conference - “Together Toward Tomorrow” Lesson 5: Tomcat 1. add mongrel plugin to eclipse Location : http://mongrel.sourceforge.net/updates/ 2. down load apach tomcat 3. goto eclipse/preference/mongrel to set up tomcat home 4. create a kc-dev.xml and dropped to tomcat_home/conf/catalina/localhost below is the kc-dev.xml I used With this docbase set up, you'll have more flexibility; so you don't have to build war file for deployment. 5. copy oracle driver/mysql driver to target\kc_custom-4.0\WEB-INF/lib or tomcat_home/lib
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.