So Cliff wanted me to send out an email with some pointers about where to start for doing Java development on Spacewalk.
Here's a list of the things i would review in order: 1. https://fedorahosted.org/spacewalk/wiki/DevelopmentWorkstationSetup After following these steps your workstation will be setup such that the WebApp is running out of git. Any changes to the code on the file system will be recognized simply by running "ant" in the java directory and then restarting tomcat. Your database can either be run on the box itself, or on a 2nd machine. 2. https://fedorahosted.org/spacewalk/wiki/EclipseSetup It is highly recommended to setup eclipse for java development. As a bonus, you do not have to run 'ant' to recompile your code, eclipse will do that for you. After changes all you need to do is simply restart tomcat 3. Try to tackle an api addition. There aren't too many apis here, but I'm hoping to add more very soon. The code implementing api calls is fairly well isolated but touches on the manager and data layers a good bit. It's the best place to contribute if you are new to the code stack. Pick an api call that sounds interesting from here: https://fedorahosted.org/spacewalk/wiki/ApiAdditions You will be working in a particular handler. For example, if you are implementing "system.foo()", you would want to start looking in SystemHandler.java. There will be some more documentation coming around creating APIs, i'll send out that link when it is available. 4. After doing a couple of apis you may want to try migrating a perl page to java. https://fedorahosted.org/spacewalk/wiki/RemainingPxtPages I would recommend some of the SDC (System details) pages, as many of those are fairly simple. This will require some knowledge in Hibernate, Data Source, Navigation, Struts, and jsps. Some additional resources to review: Basic Overview of java stack: https://fedorahosted.org/spacewalk/wiki/JavaDesign The navigation system. Usually only needed when adding a java page: https://fedorahosted.org/spacewalk/wiki/NavigationSystem Creating lists within the WebUI: https://fedorahosted.org/spacewalk/wiki/ListTag -- Justin Sherrill, RHCA 1801 Varsity Drive. Software Engineer Raleigh, NC 27603 Red Hat, Inc. _______________________________________________ Spacewalk-devel mailing list [email protected] https://www.redhat.com/mailman/listinfo/spacewalk-devel
