Helma Object Publisher

Helma Object Publisher

Infobox_Software
name = Helma Object Publisher

caption =
latest_release_version = 1.6.2
latest_release_date = release date|2008|04|07
operating_system = Cross-platform
programming_language = Java
genre = Web application framework
license = [http://helma.org/download/license/ Helma License version 2.0]
website = [http://www.helma.org www.helma.org]

Helma Object Publisher is an open source web application framework. It is often shorted to Helma.

Helma is written in Java and employs Javascript for its server-side scripting environment. Helma uses Rhino as its scripting engine giving you instant access to leverage the whole wealth of Java libraries out there. In addition to use any JDBC-accessible database, such as MySQL, PostgreSQL and Oracle, Helma provides its own XML based embedded database.

History

Helma was and is mainly developed by Hannes Wallnoefer with the help of some enthusiastic contributors from around the world. Helma was initially developed for the Austrian Broadcasting Corporation. Since then it has been used for other large public websites such as TwoDay.net (a large German speaking weblog hosting site) and the National Gallery of Victoria The first Release of Helma was in Summer 2001. Helma Version 1.6.2 has been released in April 2008.

Philosophy

The main focus of Helma is to create elegant, easy to read, understand and maintain web applications. Very strict separation between logic and presentation is of utmost importance. Helma supports you with everything so your coding experience feels very straight forward and natural.

Actions, Skins and Macros

Helma divides the responsibility of serving a request and generating a response among several components.

Actions are in charge of handling the request. Every request in Helma is mapped to exactly one Action. If the Action does nothing, nothing happens and an empty response is written back to the client. If no Action can be found to handle a particular request, an HTTP 404 Not Found response is generated. Thus, Actions control the whole processing of each request. In the Model-View-Controller Pattern (MVC), they are the Controller.

Skins are parts and pieces of layout. They are rendered by Actions and other application code to generate a response. Skins are parts of static layout markup and can contain special Macro Tags that are replaced with dynamic content when the Skin is rendered. There is no possibility to add logic (like loops or even if-statement to the skin. In the MVC pattern, Skins constitute the View.

Finally, Macros are those pieces of application code that expose application data to Skins. Macros serve as bridges between the Skins and the application code.

Database Support

You can either use Helma's internal object-oriented XML-based database or choose your own database. It supports any JDBC-accessible database, such as MySQL, PostgreSQL and Oracle. The relational database can be substituted at any point by any other JDBC-accessible database.

The mapping between the application objects and the database is done by Helmas codeless Object-relational mapping.

External links

* [http://dev.helma.org/ Helmas Official Website]
* [http://www.computerworld.com.au/index.php/id%3B114344561%3Bfp%3B16%3Bfpid%3B0 Article citing use by the National Gallery of Victoria]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Antville — Entwickler Robert Gaggl, Christoph Lincke, Philipp Naderer, Matthias Michael Platzer, Tobi Schäfer, Hannes Wallnöfer Aktuelle Version 1.3 (27. Juni 2011) Betriebssystem Java (Version 1.3 und höher) Kategorie …   Deutsch Wikipedia

  • Antville.org — Antville Entwickler: Robert Gaggl, Christoph Lincke, Matthias Michael Platzer, Tobi Schäfer, Hannes Wallnöfer Aktuelle Version: 1.1 (5. Juni 2004) Betriebssystem: Java (Version 1.3 und höher) …   Deutsch Wikipedia

  • Yahoo! UI Library — У этого термина существуют и другие значения, см. YUI. Yahoo! UI Library Тип JavaScript библиотека Разработчик Yahoo! Написана на JavaScript …   Википедия

  • Yui — Yahoo! UI Library Тип библиотека Разработчик Yahoo! Написана на ОС Кроссплатформенное ПО Версия 2.6.0 1 октября …   Википедия

  • Zope — 2 Интерфейс управления Zope в окне веб браузера. Тип Сервер приложений …   Википедия

  • Prototype — У этого термина существуют и другие значения, см. Прототип. Prototype JavaScript Framework Тип JavaScript библиотека Разработчик …   Википедия

  • FreeMarker — Тип Шаблонизатор Разработчик Jonathan Revusky, Attila Szegedi, Dániel Dékány и другие Написана на Java Операционная система Крос …   Википедия

  • Prototype (фреймворк) — У этого термина существуют и другие значения, см. Прототип. Prototype JavaScript Framework Тип JavaScript библиотека Разработчик Prototype Core Team Операционная система …   Википедия

  • Spring Framework — У этого термина существуют и другие значения, см. Spring. Spring Framework Тип Application framework Разработчик SpringSource Написана на …   Википедия

  • Grails — Тип программный каркас для создания веб приложений Разработчик Steven Devijver, Graeme Rocher Написана на Groovy Операционная система кроссп …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”