A One-day Course on Hyrax Development: Difference between revisions

From OPeNDAP Documentation
⧼opendap2-jumptonavigation⧽
No edit summary
Line 1: Line 1:
== Syllybus ==


=== Introduction to OPeNDAP ===
== Introduction to OPeNDAP ==
An introduction to both OPeNDAP and the Data Access Protocol (DAP) data model. (lecture)
An introduction to both OPeNDAP and the Data Access Protocol (DAP) data model. (lecture - 20m)
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_DAP_Intro_dwf_Mar_2012.ppt Slides]
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_DAP_Intro_dwf_Mar_2012.ppt Slides]


=== The Hyrax Data Server Architecture ===
== The Hyrax Data Server Architecture ==
An overview of the architecture of the Hyrax server. This presentation is intended for software developers. (lecture)
An overview of the architecture of the Hyrax server. This presentation is intended for software developers. (lecture - 40m)
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_HyraxArchitecture.ppt Slides]
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_HyraxArchitecture.ppt Slides]


=== Running & Debugging the server ===
== Running & Debugging the server ==
Start the virtual machine and Hyrax (hands-on)
Start the virtual machine and Hyrax (hands-on 40m)
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Hyrax_Setup.ppt Slides]
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Hyrax_Setup.ppt Slides]


The VM is an openSUSE 12.1 Linux 32-bit VM that should work with Vmware's Fusion 4, Workstation 7 and Player 3.
The VM is an openSUSE 12.1 Linux 32-bit VM that should work with Vmware's Fusion 4, Workstation 7 and Player 3.


Hyrax setup on the VM (hands-on)
Hyrax setup on the VM (hands-on - 20m)
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Checking_the_Server.ppt Slides]
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Checking_the_Server.ppt Slides]


Line 32: Line 31:
All of which you can find on the [[Hyrax#Developers | Developers]] section of the [[Hyrax]] documentation
All of which you can find on the [[Hyrax#Developers | Developers]] section of the [[Hyrax]] documentation


=== Setting up for developing server functions ===
== Server Functions ==
* [[Hyrax - Build the Shrew Project]]
* [[Eclipse - How to Setup Eclipse in a Shrew Checkout]]
* [[BES - Debugging Using besstandalone]]
 
=== Server Functions ===
This is an introduction to Server-side Functions. It is both lecture and hands-on and works best if you have Eclipse, Emacs or another suitable programming editor running.
This is an introduction to Server-side Functions. It is both lecture and hands-on and works best if you have Eclipse, Emacs or another suitable programming editor running.
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Server_Side_Functions.ppt Slides]
[http://www.opendap.org/sites/default/files/miic_class_5.8.2012/MIIC_Server_Side_Functions.ppt Slides] (lecture + hands-on 2 hours)


* Background on DAP2 and Constraints
* Background on DAP2 and Constraints
Line 47: Line 41:
* Write HelloWorld()
* Write HelloWorld()
* Advanced Topics
* Advanced Topics
== Setting up for developing server functions ==
* [[Hyrax - Build the Shrew Project]]
* [[Eclipse - How to Setup Eclipse in a Shrew Checkout]]
* [[BES - Debugging Using besstandalone]]

Revision as of 03:42, 8 May 2012

Introduction to OPeNDAP

An introduction to both OPeNDAP and the Data Access Protocol (DAP) data model. (lecture - 20m) Slides

The Hyrax Data Server Architecture

An overview of the architecture of the Hyrax server. This presentation is intended for software developers. (lecture - 40m) Slides

Running & Debugging the server

Start the virtual machine and Hyrax (hands-on 40m) Slides

The VM is an openSUSE 12.1 Linux 32-bit VM that should work with Vmware's Fusion 4, Workstation 7 and Player 3.

Hyrax setup on the VM (hands-on - 20m) Slides

This shows how to use getdap and telnet to debug the server. These are low-level command line tools that cut to the chase when the server seems to be broken. Also note that both of these slide sets sow you how to use the bescmdln tool. the bescmdln tool is very useful for working with the BES alone - note that we used it to test the BES before we started tomcat and had Hyrax in its full form up and running.

The bescmdln tool has several options that are useful:

  • It can use the SQL-like set, define and get commands
  • it can also use the XML command syntax that the front-end also uses
  • It can read sets of commands from text files (using the -i option)
  • ...and those command files can also be used with another tool - besstandalone - which can be used to test server components with actually starting the BES.

For more information on bescmdln see:

All of which you can find on the Developers section of the Hyrax documentation

Server Functions

This is an introduction to Server-side Functions. It is both lecture and hands-on and works best if you have Eclipse, Emacs or another suitable programming editor running. Slides (lecture + hands-on 2 hours)

  • Background on DAP2 and Constraints
  • Writing Server Functions: short version
  • Programming with libdap
  • A Real Server Function
  • Write HelloWorld()
  • Advanced Topics

Setting up for developing server functions