You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@turbine.apache.org by John Menke <jo...@eagleinfosystems.com> on 2001/04/23 16:27:19 UTC

Tutorial Use Case

This is a first draft -  any suggestions or additions would be appreciated.
I suggest using the Turbine Features list as a template for what we plan to
demonstrate with the use case implementation.


Turbine Sample Application Use Case


Log In to System and View / Edit Data

1.	User logs into system
2.	User is presented with data
3.	User edits data
4.	System updates data
5.	User views new data

Alternative (Authorization Failure) -   system gives user chance to log in
again


I figure if we start with this, we could expand to EJB as the backend in the
future and possibly use customized templates on the front end to make the UI
dynamic.


It was suggested that we develop the use case using the current sample
application contained in the TDK.  The focus of the tutorial would be on how
to customize this application to fulfill the use case.

I suggest using the Turbine Features list as a template for what we plan to
demonstrate for the user in the use case implementation.  Below, I have
listed the features and suggestions for how to possibly integrate them into
our basic use case.  Any additions or suggestions on how the use case could
be adapted to demonstrate any of these features would be appreciated


FEATURE LIST
------------


Integration with template systems: Velocity, WebMacro, Cocoon, FreeMarker,
JSP, ECS

-  we could show how to design a system using Model 2 methodology having
Turbine servlets as the Controller and the templating systems as the views.
It would be great if we could demonstrate how to make the controller generic
enough to be able to support more than one view.  We should implement at
least one view - I suggest JSP - but show how it's possible to switch view
implementation to any of the other template systems




Utility code for working with Velocity and WebMacro, such as a SelectorBox
class for building <select> boxes

- This could be demonstrated within the View implementation


Single Entry Point Servlet model for optimal security and control

- This could be demonstrated in the login step of the use case


Singleton based Database Connection Pool (JDBC) with built in support for
all of the major databases

- The tutorial could show how to implement connection pooling to update the
data.


ParameterParsing for GET/POST/PATH_INFO

-  UI would have forms where we could demonstrate this

Event based Action handling!

- Not sure how to implement this (any suggestions)?


Strict MVC guidelines implemented through many interfaces and abstract
classes as well as through the template systems.

- This goes along with the templating idea above


Integration with 5 Object-Relational tools: DatabaseMap/Peers, Village,
Town, OPaL, Castor

- Not sure how to implement this (any suggestions)?

IDBroker that abstracts the autoinsert/sequence usage from the database

- Not sure how to implement this (any suggestions)?

DatabaseMap generation tool that will read a schema and generate the Java
classes for you

- Not sure how to implement this (any suggestions)?

Failsafe Job based scheduler system (ie: a Java based cron)

- Not sure how to implement this (any suggestions)?

GlobalCache (Singleton based system for caching data across servlets and
requests)

- Not sure how to implement this (any suggestions)?

DateSelector (utility for building the HTML for popup date menus)

- This could possibly be used within the context of the GUI

File Upload API

- This could possibly be used - maybe the database contains pictures?

Generic Services API for creating Singletons

- Not sure how to implement this (any suggestions)?


Castor Service Integration

- Not sure how to implement this (any suggestions)?


XML-RPC Service Integration

 - Not sure how to implement this (any suggestions)?

Localization Services API

 - possibly integrate with UI presentation?


JNDI Services API

 - if we expand use case so that back end is EJB's this could be
demonstrated


Visitor/Member API for managing users

- Not sure how to implement this (any suggestions)?

Temporary and Permanent storage/management for users session data

- Not sure how to implement this (any suggestions)?


ACL (Access Control List) based security system that uses Roles and
Permissions (and the database schemas)

- Not sure how to implement this (any suggestions)?


BrowserDetector class for determining which browser someone is using

- Not sure how to implement this (any suggestions)?

GenerateUniqueId class for getting a unique number (ie: for sessions)

- Not sure how to implement this (any suggestions)?

Logging to a file facility.

- We could implement logging in the application


Property file reader tools and a TurbineResources service to make it easy to
retrieve properties

- Not sure how to implement this (any suggestions)?

Integration with JavaMail to make sending email painless

- Not sure how to implement this (any suggestions)?

Integration with JavaMail and Velocity/WebMacro to allow you to send
processed Velocity templates as email!

- Not sure how to implement this (any suggestions)?


Built using Ant

 - Not sure how to implement this (any suggestions)?

Initial application development WAR archive creation tool using Ant

 - Not sure how to implement this (any suggestions)?











---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-user-help@jakarta.apache.org