[kepler-dev] Got web UI?

Paul Allen pea1 at cornell.edu
Thu Aug 28 06:23:50 PDT 2008

Hi all,

I'd like the Kepler dev group to consider adopting a web UI for Kepler 
that I have been working on as part of an NSDL project. As it stands 
now, I think that it meets many of the needs a Kepler UI. I don't have a 
publicly accessible demo, but I'd like you all to look at the 
technologies and features I describe here to see if there is enough 
overlap to interest you. My hat is off to Tristan King who really broke 
the ground on Kepler web UIs. What I will describe isn't a lot different 
in functionality from Tristan's Hydrant 
(https://www.hpc.jcu.edu.au/hydrant/) but it is a Java-based solution.

I know it is difficult for you to evaluate without seeing something 
working. I expect to have something public in a few weeks. If the Kepler 
project would like this code to use as a basis for a web UI, I would 
clean it up a bit and hand it over to be jointly enhanced by the Kepler 

    * Java 1.5
    * Hibernate 3
    * Spring 2.5 and Spring Security (Acegi)

*Implementation Infrastructure:*

    * MySQL (very few MySQL-specific features used)
    * WebSphere App. Server (nothing IBM-specific knowingly used)
    * Eclipse used for development

*UI Features:*

    * workflow management
          o browse
          o search
          o upload
          o copy
          o version
          o delete
          o download
    * parameter management
          o custom default values
          o custom parameter prompts
          o designating parameters as required
          o expose subset of parameters for new values when workflow is run
    * job management - a job is a workflow that is to be executed with
      specificied parameters
          o see status
          o cancel job
          o delete job
    * workflow results management
          o see results from a particular job
          o see results from the most recent run
          o output is URL accessible and can be used as a permanent web
          o output from a specific job can be referenced individually
          o output from the most recent run of a job can be referenced
            as a permalink
    * "community" tools
          o tagging
          o favorites
          o rating
          o comments
    * user account management
          o login/logout/remember me
          o create/edit user account
          o password reminder

*Backend Features:*

    * actor management
          o filters are used to replace normal Kepler/Ptolemy actors
            with compatible actors that are aware of the output repository
          o not all Kepler/Ptolemy IO actors have replacements yet
          o actor replacements utilize Spring for configuration
    * job engine interface
          o an engine takes a job and runs it in its entirety
          o engines run in any Kepler-compatible JVM
          o scalable by adding more JVMs (on the same machine or other
          o size of thread pools that engines utilize can be customized
            to the JVM/machine resources
    * workflow repository interface
          o Hibernate/MySQL Implementation
                + MoML storage flexibility
                      # stored in DB as BLOB
                      # as URL reference
          o obvious potential for other implementations utilizing
            MetaCat or Fedora Commons
    * output repository interface
          o metadata (size, mime-type)
          o Hibernate/MySQL Implementation
                + content stored in DB as BLOB
    * parameter repository interface
          o Hibernate/MySQL Implementation
          o also handles one-time use job parameters

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercury.nceas.ucsb.edu/ecoinformatics/pipermail/kepler-dev/attachments/20080828/609f21c5/attachment.html>

More information about the Kepler-dev mailing list