[OT] Which technology might I use for this web application?

D

David Segall

I apologise for this post which is probably off-topic but I can't post
it correctly until you respond!

Each instance of my application consists of a single web page that
displays the names of the users and a few check boxes, filled in by
the users, that indicate their preferences. All the users should be
able to see everybody else's choices.

I assume that I give all the users of one page a web address that
uniquely identifies their page and that some code on the server
generates the page from a database that contains the basic information
on the page and which is updated by changes to the users preferences.

Which Java based tools can I use? Can I write the server code in Java?
Are there some tools that would make generating a GUI web page easier?
What should I use for database access? Maybe the preceding paragraph
is wrong and my application should be an Applet? Is there a preferred
IDE for writing and testing this application? I should state that I am
trying to minimise the amount of code that I write and that speed and
resources are not an issue.
 
J

John C. Bollinger

David said:
I apologise for this post which is probably off-topic but I can't post
it correctly until you respond!

Each instance of my application consists of a single web page that
displays the names of the users and a few check boxes, filled in by
the users, that indicate their preferences. All the users should be
able to see everybody else's choices.

I assume that I give all the users of one page a web address that
uniquely identifies their page and that some code on the server
generates the page from a database that contains the basic information
on the page and which is updated by changes to the users preferences.

Which Java based tools can I use? Can I write the server code in Java?

The standard Java technology for web applications is Servlets. For
output-rich purposes (e.g. rendering anything but simple web pages),
Java Server Pages (JSP) is a useful technology that runs on top of
servlets. These things run inside a piece of software called a "servlet
container", which handles quite a lot of the underlying server
functions. Apache Tomcat is a popular, capable servlet container; some
other containers include IBM Websphere and Bea WebLogic, and there are
others.
Are there some tools that would make generating a GUI web page easier?

For a single web page? Learning any particular tool for this purpose
would probably be more difficult than building the page directly. If
you are looking for a complete technology stack, however, then there are
tools that run on top of servlets/JSP to provide useful services. There
is an open source project called Struts that helps in implementing a
model-view-control GUI paradigm in a web application. JSP includes a
feature called "custom actions", implemented via "tag libraries", that
allow a developer to use HTML-like tags to describe in-page logic and
behavior such as looping, branching, accessing server resources, etc..
There is a wide variety of tag libraries available that you could use
with a web application, from the JSTL to a variety of special purpose
libraries. You could write your own if you wanted to do.
What should I use for database access?

Java database access pretty much all goes through JDBC at some level.
Look at the java.sql package for the standard JDBC classes and
interfaces. Some tag libraries (see above) include JSP custom tags for
performing DB accesses, or you can do it directly in your own Java code.
Your question is a bit vague, so I'm not sure whether I've really
answered it.
Maybe the preceding paragraph
is wrong and my application should be an Applet?

The advantage (if you want to call it that) of an applet is that you can
implement the GUI with AWT/Swing. In addition, the GUI runs on the
client side, rather than on the server side, which may make it a bit
more responsive. On the other hand, the browser must have a JVM
installed (recent I.E. doesn't come with one), and you face a slew of
version compatibility issues. Plus, the added flexibility of Swing
comes with considerable added complexity. All in all, I would never
recommend an applet where a standard HTML interface is sufficient.
Is there a preferred
IDE for writing and testing this application?

No. There are a variety of Java IDEs, and many of them support servlet
/ JSP development. The Eclipse IDE, with one of the several Servlet /
JSP plugins, would be one alternative. There are JSP / servlet test
frameworks that do not require a servlet container, and others that do.
I should state that I am
trying to minimise the amount of code that I write and that speed and
resources are not an issue.

Then I recommend a plain JSP for the GUI presentation. I am not
entirely clear on the required back-end logic, but this could be
implemented in one or more Javabeans associated with the JSP, by a
controller servlet, or with custom tags, depending on various factors.
If the whole application really is in one page, then a separate
controller servlet probably is overkill. For the minimum coding on your
part, I think JSP with appropriate use of JSTL custom tags might be the
way to go.
 
R

Ryan Dillon

Which Java based tools can I use? Can I write the server code in
Java?
Are there some tools that would make generating a GUI web page easier?
What should I use for database access? Maybe the preceding paragraph
is wrong and my application should be an Applet? Is there a preferred
IDE for writing and testing this application? I should state that I am
trying to minimise the amount of code that I write and that speed and
resources are not an issue.

Hi David,

You might like to take a look at RapidJ:
http://www.codecanvas.com.au/rapidj/

Using RapidJ you could quickly generate a Java web application that
maintains your users' preferences. You just need to tell it what data
(Entities) you are interested in and specify some things about the GUI
(GUI components). The generated web app uses standard stuff like
Struts, JSP and a JDBC for the data layer. The best part is, if the
generated code doesn't do exactly what you want (and most likely it
will not), RapidJ allows you to customise the generated code however
you want.

Regards
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,575
Members
45,053
Latest member
billing-software

Latest Threads

Top