image provider

JSP Replacer


Disclaimer

This essay does not describe an existing computer program, just one that should exist. This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have prepared to help you is right here.

This project outline is not like the artificial, tidy little problems you are spoon-fed in school, when all the facts you need are included, nothing extraneous is mentioned, the answer is fully specified, along with hints to nudge you toward a single expected canonical solution. This project is much more like the real world of messy problems where it is up to you to fully the define the end point, or a series of ever more difficult versions of this project and research the information yourself to solve them.

Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; or give you any additional materials. I have too many other projects of my own.

Though I am a programmer by profession, I don’t do people’s homework for them. That just robs them of an education.

You have my full permission to implement this project in any way you please and to keep all the profits from your endeavour.

Please do not email me about this project without reading the disclaimer above.

JSP JSP (Java Server Pages) has caught on surprisingly quickly. However, I think it (and its server-only-solution relatives like Tea, ColdFusion, FreeMarker, Velocity…) are only a stop gap solution. why?

JSP and Brethren Make Inefficient Use of Communication Lines

JSP And Brethren Make Inefficient Use of the Servers

Human Considerations

What should replace JSP?

Applets + Servlets. The client Applet is 100% responsible for presentation and data validation and the server servlet is 100% responsible for fetching and storing the raw data. They should communicate using RMI (Remote Method Invocation) or another simpler serialised protocol.

Wait a minute! That has been tried and it fell on its nose. What went wrong?

The Grand Plan

We are cutting down some of the power and flexibility of the Applet in return for: You could think of it that we are using Applets to create a sort of intelligent data entry terminal that lets the programmers focus on processing data rather than presentation and editing.

This is not quite such as pipe dream as you might think. I devised a Forth-based computer language that called Abundance back in 1979 that does much of this, and much more, though just for DOS (Disk Operating System) without the GUI (Graphic User Interface) complications.

Advantages of Servlets + Wizard Applets over JSP

Even without the wizard, the toolbox would make it much faster to compose data entry Applets. Even without the widgets, classes for validating at a field/keystroke level might be very useful to the community.

If you are not interested is such a drastic replacement for JSP, but just want something a little simpler, than works essentially the same way see servlet womb for your alternatives.

My Implementation

I have implemented a scheme something like the one described here. If you examine the source code of my website you will see it peppered with macro comments that expand into html code. I have written about 75 macros. You can read more about how it works under the HTML entry. I have not yet released the source code. It not quite ready for general distribution, but if you are curious, I could let you have a look on an as-is basis.
Applet
framework: list of possible frameworks
JSP

This page is posted
on the web at:

http://mindprod.com/project/jspreplacer.html

Optional Replicator mirror
of mindprod.com
on local hard disk J:

J:\mindprod\project\jspreplacer.html
Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

IP:[65.110.21.43]
Your face IP:[44.192.75.131]
You are visitor number