General:
JUIBrowser
is not really ready for use, its API may change and the code on
sourceforge does not reflect the latest development-efforts (although
the online-demo should be quite accurate).
If you're interested please contact me.
JUIBrowser is currently in an pre-alpha state:
The
framework and the underlaying technologies seem to offer enough
functionality to implement half-objects on top of
the
SWING api.
A
few half-objects for the most important Swing widgets do exist, however
they are limited in their functionality - so by extending the half
objects it will be possible to develop really complex and large
applications.
However
it is really simple to extend JUIBrowser's functionality. Adding
support for a new Swing-Widget usually takes one or in more complex
cases two java-files with only a
few lines of code, and a missing method is implemented just with one or
two additional methods.
Future:
Some tasks that I plan to do with JUIBrowser in near future:
- Implement AEP="Asynchron Event Processing", so that the client can contact the server at Events.
- Implement a proxy-servlet which allows applets to reach servers without public IP or behind a firewall.
- Implement better error handling, reconnect after exceptions, submit stack-traces to server at failure
- Rewrite of my last "large" (=50.000sloc) project using JUIBrowser.
This
application should serve as new demo (the old one really sucks), as
well as point at JUIBrowser's weaks in real-world projects so that I
can work on it.
Already completed tasks:
- Public release including source (arround 25.Nov 2007)
- Optimize
the whole command-stack sent to the server, not only till the next
flush-event. This allows e.g. many async-flush commands to be collapsed
to a single one. The demo reflects this change in the "open resize
demo", the button-layout is done on the server - however resizing the
Frame is not blocked by client/server communication.