Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Let's have a look at the OpenSyllabus code structure.

  • Code Structure
    • Frontend project (GWT code)
      • client
      • public
      • shared
    • Backend project (Sakai's tool code)
      • api dir
      • impl dir
      • tool dir

To keep it simple, in our developpement we created two separate projects (we mean Eclipse/Maven projects) : One project for the client part where you will find al the GWT source code and one project for the backend part where stands the Sakai's tool code.

OpenSyllabus frontend is organized as the recommended GWT project structurehttp://code.google.com/webtoolkit/documentation/com.google.gwt.doc.DeveloperGuide.Fundamentals.html#ProjectStructure where we have replaced the server side code by a shared packages.

  • Code Structure
    • Frontend project (GWT code)
      • client
      • public
      • shared

The project was initially created following the instruction of Creating an Application from Scratch (with Eclipse)

OpenSyllabus backend is organized as a classical Sakai's tool following a File Structure based on classic Sakai's tool directories, such as : API (interfaces), Impl (implementations) and Tool (webapp) directory. In the Tool directory, there are RPC Servlets and RPC Interfaces for Remote Procedure Call exchanges in the src/Java folder. In addition, the Tool directory contains the Index.jsp and something new : the compiled GWT content (all the generated GWT stuff : pure JavaScript and HTML)in the src/webapp folder.

  • Code Structure
    • Frontend project (GWT code)
      • client
      • public
      • shared
    • Backend project (Sakai's tool code)
      • api dir
      • impl dir
      • tool dir
        • java
          • client
            • rpc
              • OsylEditorGwtService.java (RPC Servlet)
              • OsylEditorGwtServiceAsync.java (RPC Async Interface)
            • server
              • OsylBackingBean.java
              • OsylEditorGwtServiceImpl.java
        • webap
          • index.jsp
          • org.sakaiquebec.opensyllabus.OsylEditorEntryPoint (all generated JS code + HTML + images)
          • osylcoconfigs (configuration files) I18N properties files, skin: images & css, rules.xml)

...