I'm the father of ItsNat AJAX Java web framework, JNIEasy, LAMEOnJ, JEPLayer and JEPLDroid libraries (and very old stuff like XPDOM), supporter of the Single Page Interface (SPI) paradigm, writer of the SPI manifesto and currently Android native guy. Jose Maria has posted 28 posts at DZone. You can read more from them at their website. View Full User Profile

ItsNat v0.7. More Natural, SVG Festival, Google App Engine

02.03.2010
| 2372 views |
  • submit to reddit

ItsNat, Natural AJAX, is an open source Java AJAX Component based Web Application Framework.

ItsNat logo

ItsNat approach "The Browser Is The Server" (TBITS), simulates a Universal W3C Java Browser in the server, client events are sent to the server via AJAX and converted to W3C Java DOM Events, changes in DOM server are automatically sent to the client as JavaScript updating the client DOM. In ItsNat templates are defined using pure X/HTML/SVG/XUL files with no logic. View logic is coded in pure Java using Java W3C DOM APIs promoting reuse and the goodness of Object Oriented Programming.

  • In this release Xerces DOM has been replaced by Batik DOM (SVG API not included), to fix some serious threading issue of Xerces. Batik DOM has been extended to support HTML DOM APIs and providing even more transparency following the approach "The Browser Is The Server". For instance ((EventTarget)element).addEventListener("click",listener,false) registers now a remote event listener.
  • Improved support of XHTML, in server XHTML and HTML are basically the same (serialization is of course different).
  • Improved support of non-XHTML namespaces in general (SVG, XUL, MathML...), pure and embedded.
  • SVG is even more a first class namespace, besides native SVG, added support to the following SVG plugins: Adobe SVG Viewer (v3 and v6), Renesis 1.1, Savarese Ssrc, SVGWeb and Batik as applet. Savarese Ssrc also provides XUL to MSIE.
  • Support of SVG (or any other non-XHTML namespace) embedded inline in XHTML served with MIME "text/html" in browsers with native SVG. In MSIE and MIME "text/html" SVG code can be embedded inline in XHTML using SVGWeb and Adobe SVG Viewer, both including dynamic DOM behavior, very useful on Single Page Interface applications (no page navigation). Dynamic DOM of SVG code embedded inline in X/HTML running with Adobe SVG Viewer is UNIQUE because this hidden feature has been casually discovered and used only in ItsNat. SVGWeb support is interesting because SVG DOM is managed in server hidding SVGWeb specific API and avoiding some SVGWeb problems and limitations, in ItsNat SVG programming is identical in browsers with native SVG support and with SVG plugins.
  • More browsers supported, including Bolt, UCWEB, Motorola Symphony, Opera Mobile 9.7 and 10, BlackBerry JDE 5.0 (Storm 2 and others), Palm OS etc. Heavily improved performance and stability of ItsNat in Pocket IE (WinMob 6.0 and 6.1), now the Feature Showcase WORKS with Pocket IE (most of features).
  • XUL including AJAX in Gecko browsers and MSIE with Savarese Ssrc plugin.
  • Some support of Google App Engine including AJAX. ItsNat is along with Vaadin and ZK the only server centric frameworks with built-in AJAX support running in GAE.
  • JavaScript framework files no longer are public, automatically loaded from ItsNat.jar
  • Improved filtering/creation of components. Thanks this improvement the Feature Showcase can work with limited browsers like Pocket IE or Motorola Symphony introducing on the fly any required DOM change by these browsers without batardizing a web application designed for anyother browsers.
  • Auto-binding in server of child documents loaded through iframe, object, embed or applet tags including SVG. Child documents now can be used as whether they where inline into the parent document (very useful when SVG plugins are used in Single Page Interface applications).
  • More features, bug fixes, added API (including some API changes).


See the complete list here:
http://itsnat.sourceforge.net/php/download/RELEASE_NOTES.html

Web: http://www.itsnat.org
Online demo: http://www.innowhere.com:8080/itsnat/
GAE demo: http://itsnatfeatshow.appspot.com (see "Google App Engine working examples")

 

0
Published at DZone with permission of its author, Jose Maria Arranz.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)