Re: [opennms-devel] Adobe flex for web gui

David Hustace <[email protected]>
Newsgroups gmane.network.opennms.bugs
Message-ID <[email protected]>
On Feb 21, 2008, at 2:38 PM, Alejandro Galue wrote:

> The demo is just amazing.

Exciting so!


<biased-commentary required-reading="false" >

For each of our 3 previous DevJam's, we've explored richer WebUI  
development.  During DevJam 1 tried using Scriptaculous and prototyped  
(pun intended) the coolest NMS feature ever, "The Dynamic RRD Graph  
Designer" and it was good.  It was cool technology but wasn't the "no  
brainer" solution for richer OpenNMS UI development that we found  
Spring to to be for our daemon development.  During DevJam 2, we  
worked more on the UI backend with the goal of making the webapp more  
testable and under-control and improving upon the MVC pattern...  
hence, Spring MVC, since the OpenNMS daemon architecture future is set  
in Spring.  DevJam 3 we shot for the moon and attempted to get Maps  
rewritten with GWT and Canvas.  We learned a lot and worked very hard  
to get GWT to be the Map technology and turned to Canvas when it  
became apparent that wasn't going to work.

Okay, I've been looking and hacking around for quite a while now  
exploring different rich WebUI technologies trying to find one that  
will help us to simplify the WebUI overhaul.  For me, the key factor  
has been what framework/technology works best with the technologies  
already chosen for OpenNMS' architecture.  The criteria I've been using:

0) Okay, it has to be cool technology... such as reverse AJAX
1) Open Source (of course)
2) Allowed me to write more Java code in the back-end rather then  
heavy client-side JavaScript code
3) Since we're heavy Spring, a technology that has indications of  
supporting or blatant support for Spring
4) An active community

Number 0 and 1 are obvious.  Number 2 gives an OpenNMS developer  
momentum because we are Java coders not UI developers.  Number 3 won't  
show up on your list of criteria until you start attempting to make  
something that you can easily test and build when developing OpenNMS.   
(BTW: We really need to get to the point of not accepting code for new  
features unless there are unit tests.  When we start refactoring for  
OSGi and the like, not having tests is going to bite in the...).  So  
numbers 1 and 2 helps make OpenNMS sustainable, too.  Number 4 means  
that there must be something to the technology and makes it more fun.   
If this isn't going to be fun, why would you want do it?

So what about GWT?  My experience is that there are amazing widgets  
that you can use, yes.  But go through and look at the dashboard code  
and its build process.

One great advantage of GWT is the Java -> JavaScript compiler and that  
the code you write can run against any HTTP server.  This is great for  
a portable UI application development but it is not something that we  
even remotely require/desire.

Another limitation of the Java -> JavaScript compiler is that we can  
only use a subset of the Java 1.4 libraries (27 classes, 11  
interfaces, and 18 exception types) last I looked.

A GWT application can run completely with out server communications  
and small GWT apps are usually quite spiffy.  However, all of our UI  
is going to be dependent on a "middle tier" or a supporting GWT  
servlet and making it subject to the same latency as any other AJAX  
technology.  Also, distributing the application logic using GWT's  
transparent RPC invocation is a concern for security.  (See DWR's  
advanced CSRF protection)

Two of the biggest limitations is 1) that GWT forces us to make the UI  
one giant application.  This may have changed but this was impractical  
after we did the dashboard and we attempted to start doing other GWT  
components in OpenNMS.  And 2) the Java -> JavaScript cross compiler  
are proprietary binaries.

I'm still in the DWR camp: http://getahead.org/dwr/overview/dwr and I  
think the technology is advanced enough to sustain our development  
efforts and young enough for them to be excited about OpenNMS choosing  
their technology.

I have more details about my DWR proposal coming to the OGP DevJam  
thread.

</biased-commentary>


David Hustace
The OpenNMS Group, Inc.





David Hustace
The OpenNMS Group, Inc.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/index.php/Mailing_List_FAQ

opennms-devel mailing list

To *unsubscribe* or change your subscription options, see the bottom of this page:
https://lists.sourceforge.net/lists/listinfo/opennms-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.