Turbine Wish List

If there are things that you would like to see changed or added to Turbine, here is the place to talk about it. Please sign your comments and/or suggestions. If you would like to cast a vote in favor of some of these requests, sign you name with a +1 after the discussion.

Note: the +1 is not to indicate a committer vote. It is to express your interest in the enhancement. The best way to REALLY cast you vote is to supply a patch (wink)

Intake: Database validations for a field

I would like to be able to have a field validated using a database lookup. This would be in addition to the normal validation rules.


Intake: Group level validation

You should be able to validate relationships between fields within the same group. For example, I would like to validate that startDate > endDate where both fields are dates in the same group. This would require a group level isValid flag and a group level errorMessage.

Related messages on the turbine-dev list:


This has been implemented in version 2.3.3

– tv

Intake: Javascript generation

Form field validation should ideally be done on the client side. It should also be done on the server side in case javascript is not available or is disabled on the client's browser. In order to prevent having to maintain one set of validation rules in Intake and another in javascript, I think that Intake should be abloe to generate javascript to perform form validation based upon the rules that are defined in intake.xml.

This would obviously preclude being able to generate validation rules that are only possible on the server such as database lookups. Generating most of the JS code for the client side validation is better than none at all!

Related messages on the turbine-dev list:


+1 - Why add to server-side compute load when unnecessary? Let the client do it! Extending Intake to generate js for validation would move Intake up the food chain as a powerful tool for form validation. – jdiggans

  • In actual fact, Javascript validation is a convenience to users only, you still need to validate on the server to ensure someone isn't mucking about with the client or the data stream. This being the case, providing js validation will only add to the server side load. That said, I'm all for improving the user experience. – ScottEade 2003-01-20
  • We should also look at Jakarta Commons Validation to see if it is appropriate to retrofit it as the backend to Intake. – ScottEade 2003-09-29

Getting Rundata by using a static method

e. g. Turbine.getRunData() would be great

– Anonymous

+1 - I wrote a service to do this a while back, but I think it'd be great to have a simple static method. The service just maps Threads to RunData. The mapping is plugged in at the Page level in doBuildBeforeAction and doPostBuild. Its especially convienent to know who the current user is at any place in the code without passing the RunData object around everywhere. – krokicki

Intake: Documentation

  • The service document should be rewritten to without examples from Scarab. This seems to be confusing for new users.
  • A quick reference for the fields, validators, and rules should be developed.


Improvements to the documentation have been made in version 2.3.3

– tv

Turbine Exception Handling

The way the Turbine 3 servlet passes Exceptions to the handleException method of a configured ExceptionHandler would be useful for Turbine 2. Currently the handleException method is implemented in the Turbine 2 servlet, but it would be better to allow a custom implementation.
This was originally posted by Rodney Schneider on the turbine-dev list

Embedded layouts on Velocity templates

See: PageLayout

+1 QuintonMcCombs

More robust multi-part message handling

Implement more robust multipart message handling (org/apache/turbine/util/mail)

_(This item was copied from http://jakarta.apache.org/turbine/turbine-2/todo.html)_

Isn't this what the commons-email project has in sandbox? I use it, and it seems to do everything? – EricPugh

Cocoon 2 Implementation

Well thought out (and executed) Cocoon 2 Implementation

_(This item was copied from http://jakarta.apache.org/turbine/turbine-2/todo.html)_

  • No labels