Is NetBeans Visual Web Pack for You?

There is a lot of excitement around visual tools for Java development. We've seen that with Matisse GUI builder in NetBeans - instead of a day of Swing handcoding you can design the GUI easily in 15 minutes. Time = money and this is why people like Matisse GUI builder so much - finally Swing development is quick and easy even if you are not a Swing guru. That's how it should be (although it makes one wonder why it took 10 years... ;)

In the Java world, there are only few visual tools for development of web applications. Before I joined Sun I was developing a web application with Struts framework and I thought... do I really have to write all the HTML, JSP, etc.? There must be a better way.

Visual Web Pack (which comes from Java Studio Creator) can make visual web development easy, if you are ok with the way it does it. It has come a long way since the first release in Creator 1 - it supports now JSF 1.2 and you can use it together with Java EE 5. You can watch a webinar with Craig McClanahan where he shows how to use Java Persistence API together with Visual Web Pack. Simple and powerful!

But -- The world is not perfect (as usual :). Visual tools for web development are a double-edged sword. They have their advantages and disadvantages. Some users love Visual Web Pack for what it provides but some of them go crazy because by using visual tools they lose a bit of control or they don't fit their development environment. So I'd like to discuss this topic, so that you can decide whether Visual Web Pack is for you or it is not.

First of all, the good news is that with NetBeans you can do both visual and non-visual development. If you want to use the non-visual JSF (Struts, Spring, Wicket, Tapestry, ...) support you get lots of support like code completion, highlighting, wizards, etc - both through standard modules and through community-contributed modules. Especially if you decide to stick to the Java EE 5 standard, you get excellent support from NetBeans for Java Persistence API, Java Server Faces 1.2, Enterprise Java Beans 3.0 and Web Services JAX-WS 2.0.

So before you start to develop your next web application you should probably make a decision whether you want to use visual or non-visual web development tools. Let's look at the advantages and disadvantages.

Visual Web Pack IS for you if:
  • you want to create web applications quickly, really quickly - it's like using Matisse
  • you want to do visual data binding and property binding without writing any code
  • you want to handle navigation visually - you can easily specify navigation for hyperlinks, buttons, etc.
  • you want to use lots of existing Java Server Faces (JSF) components without having to write any code
  • every component should be an object with properties by which you can tweak it's look and functionality
  • you want to use AJAX-enabled components for JSF
  • you want to handle data validation and conversion easily
  • you have existing data and want to expose this data through various web interfaces easily
  • you start developing your application from scratch or you already started building it with Creator 2 U1
  • you like event-driven applications (in JSF you can invoke events similarly as in Swing)
  • you want to focus on making money, not on writing web user interface code (or worse on writing your own web framework :)
Visual Web Pack is NOT for you if:
  • you want to have 100% control over the HTML code and JavaScript used in your web application - you don't want to rely on JSF components
  • you would like to modify an existing application which wasn't developed with Visual Web Pack / Creator 2 U1
  • your application is very complex with lots of pages, navigation rules and with a very complicated web UI
  • your web designers design HTML code for your application in another tool
  • you need to control every pixel of your web UI
  • you want to use JSF components which don't support the Design Time API
  • you simply don't like visual tools
  • you want to use another framework than Java Server Faces for any reason
  • you want to use a templating engine
Don't take these rules as a dogma - these are just my advices from my experiences when working with Visual Web Pack.

As I said, you can use NetBeans in both cases - for visual and for non-visual development. I suggest you to take time and think which of them is better for you - it is easy to get tamed by the simplicity and rapid development provided by visual tools. In many cases, they can make you really productive and save lots of time but they won't work for everyone and in every scenario.

Hi Roumen, Two quick questions: 1) Does this work with Netbeans 6.0 M5? 2) What plans are there for proper GWT support in Netbeans?

Posted by Magnus Larsson on prosinec 06, 2006 at 06:42 odp. CET #

ad 1) No, it does not, M5 contains many incompatible changes in the java editor infrastructure. Future releases of Visual Web Pack will be based on 6.0. ad 2) There are no official plans for better GWT support in NetBeans at this moment AFAIK. The plug-in might improve though - it depends on it's developer.

Posted by Roumen on prosinec 07, 2006 at 12:44 dop. CET #

Hello Roumen, I use NB 5.5 with the new JDK 1.6. I heard something like, Netbeans looks like a native GTK application. But on default thats not the case. Do you know how to do that? Thanks!

Posted by Dennis on prosinec 07, 2006 at 02:29 dop. CET #

Try setting the GTK look and feel: see this page. You're on Linux, right?

Posted by Roumen on prosinec 07, 2006 at 03:43 dop. CET #

Thanks it is:\\n ./netbeans --laf\\n Does this now use the native GTK API? (because it doesn´ t seem to be too fast....)

Posted by Dennis on prosinec 07, 2006 at 04:12 dop. CET #

It should... but I am not sure. Try asking Ramon Ramos :)

Posted by Roumen on prosinec 07, 2006 at 06:19 dop. CET #

Roman I am Struts guy and probably I will continue to be. Visual Web Pack seems to be Matisse for JSF though..and fair enough! I would love though to see Netbeans 6 an updated support for the upcoming Struts 2.0. Netbeans provides Support for Struts 1.x and it really rocks especially for the newbies..can you please consider move it to Struts 2.0.It should not be difficult I guess! Greetings from greece! Looking forward to see your haircut in Javapolis :P

Posted by Paris Apostolopoulos on prosinec 07, 2006 at 01:04 odp. CET #

Thanks for the feedback. Any idea when is Struts 2.0 comming out in final release?

Posted by Roumen on prosinec 07, 2006 at 01:46 odp. CET #

It shouldn't be more than 1-2 months time for the first GA. The betas now 2.0.1, 2.0.2 are actually very stable. So it would be nice if Netbeans continued supporting Struts 2 in its future version.

Posted by Paris Apostolopoulos on prosinec 08, 2006 at 12:50 dop. CET #

We always try to support latest versions... so hopefully Srtuts 2 support will come in NB 6.

Posted by Roumen on prosinec 08, 2006 at 12:56 dop. CET #

Can NetBeans Webpack help develop JSF applications with Java syntax instead of JSP? I mean it is possible to write a ViewHandler that maps URLs to Java classes, like UIComponent component = new UIComponent();XPanel panel = new Xpanel(); panel.add(somecomponent); I believe that the industry should be tracked by to the power of Java and Object Orientation (like Swing) instead of the hybrid programming languages (HTML, XML and Java). And I would very much like to see NetBeans help developers write Java for JSF. Thanks.

Posted by Nader Aeinehchi on prosinec 09, 2006 at 02:25 odp. CET #

Unfortunately, lack of Maven support (through Mevenide) is a deal-breaker. Also, VWP has a long way to go to support third-party component libraries in the visual editor. A good start, but simply bolting JSC onto NetBeans doesn't add any usefulness that wasn't already available (via JSC). I look forward to VWP's future, though.

Posted by Graham on prosinec 11, 2006 at 11:51 dop. CET #

"but simply bolting JSC onto NetBeans" ... the Visual Web Pack developers might get upset if they read this... :) they've spent lots of time by moving to JSF 1.2 (from 1.1), adding support of Java EE 5 and other things which are not available in Creator 2. More interesting stuff is going to come in the future, once it becomes opensource other good things might start to happen.

Posted by Graham on prosinec 11, 2006 at 02:31 odp. CET #

Oh, I'm not implying that it's wasted effort. From what I've read, it was a lot of hard work to get to where they are wrt VWP. And the JSF 1.2 stuff is great. I'm just eager for it to be open-sourced and made a bit more "open" and not so sun-centered, especially regarding the Sun Rave/WebUI components. VWP is really unique. I just feel like a kid on Christmas morning with a great new toy but no batteries. I can't wait for the batteries! :)

Posted by Graham on prosinec 11, 2006 at 03:02 odp. CET #

Post a Comment:
Comments are closed for this entry.

Roman Strobl


« červenec 2016