Česky   |  Deutsch   |  English   |  Español   |  Français   |  Indonesia   |  日本語   |  한글   |  Polski   |  Português (BR)   |  Türkçe   |  中文   |  正體中文   |  Your Language  
PlanetNetbeans
Planet NetBeans is an aggregation of NetBeans related musings from all over the Blogosphere.
Feeds
[RSS 1.0 Feed] [RSS 2.0 Feed]
[FOAF Subscriptions] [OPML Subscriptions]
Do you blog about NetBeans ? Add your blog to PlanetNetBeans.
Feed Subscriptions
In the Key of E (feed)
Jan (Hanz) Jancura's Blog (feed)
Jun Qian (钱骏) 's Weblog (feed)
Inside NetBeans Mobility (feed)
Milan's blog (feed)
Satya's Blog (feed)
davidsalter.co.uk - NetBeans (feed)
APIDesign - Blogs (feed)
Inspiration and Expression » Netbeans (feed)
NetBeans Support Weblog (feed)
- c o r n u c o p i a - (feed)
Angad's Blog (feed)
Miles to go ... (feed)
NetBeans Core QA (feed)
Chris Webster's Weblog (feed)
Insider Scoop From the Tutorial Divas (feed)
Web Cornucopia (feed)
Gregg Sporar @Sun (feed)
Janice Campbell's Weblog (feed)
Martin's Blog (feed)
NetBeans for PHP (feed)
Octavian Tanase's Weblog (feed)
Petr Chytil's Weblog (feed)
Rechtacek's (feed)
Sushant Kumar (feed)
Stan's Weblog (feed)
My First Blog - Satyajit Tripathi (feed)
tm's weblog (feed)
Tomasz Slota's Weblog (feed)
Vadiraj's Blog (feed)
Vivek's Weblog (feed)
Wen's Blog (feed)
Whisht Wind (feed)
Martin Adamek's Blog (feed)
NetBeans Zone - The social network for developers (feed)
Ludovic Champenois's Blog (feed)
Patrick Keegan's Blog (feed)
Rich Unger's Blog (feed)
Tom Ball's Blog (feed)
Tim Boudreau's Blog (feed)
Carsten Zerbst's Weblog (feed)
adourado (feed)
Geertjan's Blog (feed)
Jesse Glick (feed)
Roumen's Weblog (feed)
sandip chitale's blog (feed)
Toni Epple (feed)
mkleint (feed)
One Minute Distraction (feed)
NetBeans Profiler (feed)
The Portal Post (feed)
Virtual Steve (feed)
Insert Witty Irony Here (feed)
Winston Prakash's Weblog (feed)
[digital:meditation] (feed)
J. O'Conner Consulting, Inc. » NetBeans (feed)
Kuldip Oberoi's Blog » NetBeans (feed)
Adam Myatt's Weblog (feed)
Brian Leonard's Blog (feed)
Hans Muller's Blog (feed)
Vincent Brabant's Blog (feed)
Adam Bien (feed)
Ignacio Sánchez Ginés » NetBeans (feed)
Jonathan H Fisher - Blog » Netbeans (feed)
Michel Graciano's Weblog (feed)
Ramon.Ramos (feed)
Paulo Canedo » NetBeans English (feed)
AS's blog (feed)
Anuradha (feed)
Neil's netBeans Stuff (feed)
Computer says null; (feed)
NetBeans Adventures, Java and more (feed)
Netbeans (feed)
Bistro! (feed)
Mobility Everywhere (feed)
JamesBranam's Blog (feed)
The Next Wave (feed)
Charlie Hunt's Weblog (feed)
David Coldrick's Weblog (feed)
Craig McClanahan's Weblog (feed)
.JARa's Bilingual Weblog (feed)
Jean-Francois Denise : JMX, NetBeans and more! (feed)
Masaki Katakai's Weblog (feed)
Lukas Hasik's Weblog (feed)
Martin Grebac (feed)
Pavel Buzek's Weblog (feed)
Seapegasus Blog (feed)
The Aquarium (feed)
Tor Norbye's Weblog (feed)
Xzajo's Weblog (feed)
cld (feed)
Hulles - NetBeans (feed)
James Selvakumar's Blog » netbeans (feed)
N, Varun » NetBeans (feed)
Netbeans for the Coffee Drinker » Netbeans (feed)
Newsintegrator Blog » netbeans (feed)
Java and Nigerian Developers » Netbeans (feed)
Bernhard's Weblog (feed)
Van Couvering Is Not a Verb (feed)
Manikantan's Netbeans (feed)
Shanbag's Blog (ರಜ&#3236 &#3250&#3275&#3221) (feed)
Wade Chandler's Programming Blog (feed)
Big Al's Blog (feed)
Code Snakes (feed)
-c o r n u c o p i a- (feed)
NetBeans Community Docs Blog (feed)
Devlin's Lab (feed)
Diego Torres Milano's blog (feed)
Oliver Wahlen's Blog (feed)
Vroom Framework (feed)
Netbeans6/6.1beta my best practices (feed)
The Netbeans Experience (feed)
An Open Source Fascicule (feed)
Amateur's Coding (feed)
Shuttle between Galaxies (feed)
Pavol Pitoňák's Blog (feed)
NETBEANS 6.1 (feed)
Welcome to my live... (feed)
Roger Searjeant's blog (feed)
Java Loves Games (feed)
Alex Kotchnev's Blog (feed)
Devel Blog (feed)
Messages from mrhaki (feed)
diamond-powder (feed)
Antonio's blog (feed)
The NetBeans Podcast (feed)
Where's my Blog?!

Powered by:    Planet

Last updated:
January 07, 2009 09:11 AM
All times are UTC

sponsored by Sun Microsystems

visit NetBeans website
Geertjan's Blog - January 06, 2009 04:48 PM
NetBeans Shisha Integration

One of the top 10 features of Egypt is, of course, the shisha (more specifically, the contents thereof). Here is me last night outside a cafe in Cairo with Hamada, Amr, and Khaled, applying the default shisha usecase:

The discussion obviously turned to the need for tight integration between shisha and NetBeans IDE. Initial brainstorms around powering NetBeans IDE via a shisha were briefly assessed and then rejected as brilliant but impractical. Then, as if out of thin air, the concept of a NetBeans plugin for shishas was born. Here is a first implementation—shisha cursor:

package org.netbeans.shisha;

import java.awt.Cursor;
import java.awt.Image;
import java.awt.Point;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
import org.openide.modules.ModuleInstall;
import org.openide.windows.WindowManager;

public class Installer extends ModuleInstall {

    @Override
    public void restored() {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                //Create the cursor:
                Toolkit tk = Toolkit.getDefaultToolkit();
                ImageIcon shishaImageIcon = new javax.swing.ImageIcon(getClass().getResource("/org/netbeans/shisha/shisha.png"));
                Image shishaImage = shishaImageIcon.getImage();
                Cursor shishaCursor= tk.createCustomCursor(shishaImage, new Point(10,10), "Shisha");
                //Use the cursor in the main window:
                JFrame frame = (JFrame) WindowManager.getDefault().getMainWindow();
                frame.setCursor(shishaCursor);
            }
        });
    }

}

And this is how the source structure looks, together with the shisha cursor installed into the IDE:

Even tighter integration can be achieved by setting the shisha cursor in the editor too, by changing the caret to use the same icon. Further steps could involve extending the Options window with a selection of different shishas from which the user can select their preferred model. In this case, unfortunately, the content thereof is irrelevant.

-c o r n u c o p i a- - January 06, 2009 02:37 PM
Getting my feet wet

I have been getting my feet wet working with the Python support in NetBeans for sometime now. After a couple of commits on my behalf by Tor and Jean-Yves, I did the first push myself after I got access to the 'main' repository. Woohoo!

Tor's quick Mercurial tip IS a life saver: http://blogs.sun.com/tor/entry/mercurial_tip_checking_in_regularly

I am all set to get drenched.

NetBeans Community Docs Blog - January 06, 2009 01:35 PM
Community-Contributed Docs Statistics

Statistics: Year 2007-08

Year 2007

Contributions- 76 (10 Months)
Unique Authors- 55
Analysis: This states that nearly every month, 8 docs were contributed to our project, and there were 5-6 authors joining the project every month..

Year 2008
Contributions- 203 (12 Months)
Unique Authors- 60
Analysis: This states that nearly every month, 17 docs were contributed to our project, and there were nearly 5 authors joining the project every month..

Comparative Study
From the above figures, one can infer that in the year 2008, there was 62.56% increase in the no. of contributions.. However, the rate of authors joining the project remained the same..

What Next?

This is your project and you are the driving force, so if you have any suggestions for betterment of this project, let us know.. We hope to see the same enthusiasm again this year, wish you good luck and thank you for your contributions till date..

Happy New Year :)

Miles to go ... - January 06, 2009 01:00 PM
TOTD #60: Configure MySQL 6.0.x-alpha to NetBeans 6.5


This Tip Of The Day answers the following comment on my blog:

How to Configure a MySql database to be able to connect Netbeans6.5.?
I've tried using mysql Server 6 many times, but it fails.
Please, let me know how to fix that problem.
  • Download MySQL 6.0 from here.
  • Install and start MySQL 6.0 on Mac OSX using the clearly written installation instructions.
    • Basically the download is available in .tar or .dmg format. Using .dmg format is the easiest way, double-click and follow the instructions taking all defaults.
    • MySQL is installed in "/usr/local/mysql-6.0.8-alpha-osx10.5-x86_64" and the soft link is adjusted so that its available from "/usr/local/mysql". The directory structure looks like:

      lrwxr-xr-x   1 root  wheel   32 Jan  5 14:00 mysql -> mysql-6.0.8-alpha-osx10.5-x86_64
      drwxr-xr-x   3 root  wheel  102 Jan  5 14:00 mysql-5.0.45-osx10.4-i686
      drwxr-xr-x  17 root  wheel  578 Nov  3 21:02 mysql-6.0.8-alpha-osx10.5-x86_64
    • Start MySQL server as: "sudo mysqld_safe" to see the output as:

      ~ >sudo mysqld_safe
      090105 14:20:51 mysqld_safe Logging to '/usr/local/mysql/data/dhcp-usca14-133-38.SFBay.Sun.COM.err'.
      090105 14:20:52 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
  • In NetBeans 6.5, Services tab, right-click on "Databases" and click on "Register MySQL Server..." as shown below:

  • Take the default values, if your MySQL instance is running on the default ports, as shown below:



    and click on "OK". If your database is already running then NetBeans will automatically connect with the database. If the database is not running then start it as explained above, right-click on the newly added database as shown below:



    and the default databases are then shown as:


More details about configuring MySQL in NetBeans 6.5 are explained in the official documentation.

Please leave suggestions on other TOTD (Tip Of The Day) that you'd like to see. An archive of all the tips is available here.

Technorati: totd netbeans mysql

Adam Bien - January 06, 2009 10:08 AM
Mapping JPA Entities To SQL Views - It Works Even With Derby

SQL Views can be considered either as best practice or an anti-pattern. It depends on the perspective. Sometimes, however,  it is required to provide an efficient way to iterate over an excerpt or even a set of related entities, but return a different “view” to the client. This can be achieved by fetching the entities with EntityManager and merging them together inside a Session Bean (a Service). This approach is neither fast, nor easy to maintain. Especially the merging and extraction of entity data is error-prone and can become quite complex. Another possibility is the execution of more complex native SQL-statements and mapping them into existing entities or TOs. The query could become complex and the filter criteria highly repetitive. You will need the filter in all related queries which return the particular subset. Especially in the context of pagination, where the data is mostly retrieved for read-only purposes, database views are the easier and more efficient alternative. Instead of implementing a lot of plumbing on the “Java-side” all the work could be easily done in the database. You have just to create a SQL View – it is a part of the SQL standard and is even supported by the Derby DB shipped with Java:

CREATE VIEW APP.V_CUSTOMER(NAME,CITY) AS SELECT NAME,CITY FROM APP.CUSTOMER

For SQL queries there is no difference between views and tables, so you can easily map a JPA entity to a view transparently. The code on the Java side remains clean and simple – and you will even get better performance. There is a drawback: not all views are updatable. Whether a view is updatable or not highly depends on the complexity and particular database. E.g. in Derby DB all views are not updatable.

[It is an excerpt from my current book "Productive Java EE - Rethinking Best Practices]

NetBeans for PHP - January 06, 2009 08:42 AM
Defining a variable type in comment

Yesterday was the first day at work this year and we committed new feature, which allow to define a type for a variable in a comment. The comment has to be defined in specific form as is displayed on the picture.

The comment has to be /* @var $variable type */ . If the comment is written in the right form, then the var tag has bold font.

You can use this helper, when NetBeans is not able to recognize the type of the variable. On the picture below you can see that NetBeans recognizes that the variable $media in the echo statement is Book type. But then another object is assigned to the $media variable through the getLastMovie() function. This function defines the return type Movie, so from this line NetBeans knows that $media variable contains an object of Movie type. 

NetBeans handles the variable name and the type from the comment helper as are handled in PHP Doc. So for example mark occurrences works as usual.

Next time I will show you how NetBeans can help you with writing the comment helper.

Inspiration and Expression » Netbeans - January 06, 2009 08:01 AM
Java Penetration Statistics

This Java statistics is based on http://www.kiyut.com (not this blog, this blog is tracked separately). Basically, it is a B2C sites which specialize in Java Desktop Application.

If you are wondering how do we track Java version, please visit this step by step guide on how to track java version using google analytics at
http://cowwoc.blogspot.com/2008/11/tracking-java-versions-using-google.html

Here is our Java visitor stats, it is fresh from Google Analytics data 05 December 2008 - 05 January 2009

Java Visitors

(more…)

Tor Norbye's Weblog - January 05, 2009 08:51 PM
NetBeans Screenshot of the Week #40: Python Test Runner UI


In the 7.0 builds, we have a dedicated unit test runner for Python now. Running a file as a test, or running the test project action, will open a test runner with the output docked on its right hand side, instead of just the output window (click for full size screenshot):









Here's the test runner itself:






What you want to see in the output is a single green line which says "All n Tests Passed", where n is hopefully a large number. But when one or more of the tests fail, you see something like the above. Running the Next Error action (Cmd-.) will jump to the next failed test, just like it normally jumps to the next error in the current output window, or the next task in the tasklist.



One thing to notice (and this is new in 7.0) is that we now include the failure message right there in the test summary for each test, so you don't have to drill into an individual test to see the failure message. You can also hover over a test and any output from that test is shown in a tooltip. You can also right click on tests and select "Run Again" to run just one specific test over again.



This is the same window as the one we have for Ruby. In fact, Erno, who wrote the Ruby test runner, has modularized the code now such that it's the same implementation for both languages - we just have language specific plugins to actually hook into the various testing frameworks. Currently, for Python we support the two builtin testing frameworks: unittest and doctest. The above screenshot showed a regular unittest run. Here's a doctest:







One important thing to note is that you don't have to instrument your code with any test running code. As long as you place doctests in your docstrings, or as long as you have any classes extending unittest.TestCase, the test runner will find them. All you have to do is run Test Project:







and when you have done that, both unittests and doctests are found and included in the same test run - here's both failing doctests and unit tests:






Once again, kudos to Erno for writing the excellent test runner support! And as usual, let us know of any problems.



P.S. Jean-Yves Mengant has also done some excellent work recently. In addition to some cool new quickfixes in the Python editor for NetBeans, he has just integrated a multithreaded debugger for Python!




Van Couvering Is Not a Verb - January 05, 2009 07:53 PM
Twitter overload - help!

This keeps happening - the community I need to stay engaged with keeps jumping on new forms of communication, and if you want to stay in tune, you need to jump on too.

This first happened with blogging, and then with Facebook. These I actually don't mind. I like writing and reading blogs, and Google Reader has made it fairly easy for me to quickly digest what's going on.

Facebook is nice because I keep in touch with friends. It's not so much about work but about getting a little more connected, particularly to old friends who I don't see much any more.

But this Twitter thing - I really don't like it. Sorry. I subscribe to someone's Twitter feed because I value their thoughts, but then it's serious drinking from a firehose. Many of these Thought Leaders are just constantly (I mean constantly, like I don't know how they get any work done) pushing stuff onto Twitter, and my head just spins. I just un-followed Tim O'Reilly, I just couldn't take it any more. I tried Guy Kawasaki for less than a day - that was mind numbing.

The problem is, these guys aren't blogging any more. Tim Bray has gone almost completely radio silent on his blog. Now Brian Aker's going to do the same thing. I never hear anything from James Governor's blog any more, but his Twitter feed is really overwhelming, and I had to sign off. It's a bummer, I really like what these guys have to say, but I just can't take it.

Those of you who follow people on Twitter, how do you do it? How do you process all this information, get the gold, and get on with your life? I am at a loss...

There's something else - blogs can have a Quality that Twitter doesn't. A good blog has me laughing or nodding my head or both, and when I'm done reading it, I have this quiet smile and a feeling of gratitude, like I just received something both entertaining and valuable. 150-character blaps on Twitter just don't have the same feel, sorry. So I miss that and am saddened that people are moving off of the blog format.

Posted via email from David Van Couvering's Posterous

Toni Epple - January 05, 2009 02:45 PM
Quick Tip 7: Icon Branding: GIF or PNG?

To replace the default icon of an action, you need to find out where your icon of interest comes from, create a folder named like the modules jar file with the same folder structure as in the original module, and place an icon that’s named exactly like the one you want to replace (a more detailed description is here).

That’s easy, but most platform icons are in GIF format and you might want to use icons that are in a different format, e.g. the popular Nuvola Icon Set that comes in PNG format. I didn’t want to convert a whole bunch of files manually, and I was to lazy to write a script, so I tried ot what happens when I simply rename those PNGs to .gif. And it worked. Quite useful when you have to replace a large set of icons…

Seapegasus Blog - January 05, 2009 01:09 PM
The Cube! It's alive! (continued)

Happy new year everybody! Previously I mentioned that the NetBeans mascot, NekoBean has already been incarnated as plush toy, pendant, etc. Thiara went yet another step further: She posted instructions how to cut and paste (literally) a 3-dimensional NekoBean — as office decoration. :-D

If you don't read German, here's the translation:

  1. Print the NekoBean template (PDF) on scrap paper, cut out the shape, and draw the outline on the backside of construction paper — unless your printer can handle fancier kinds of paper directly. The shape consists of the body, 4 legs, tail and 2 ears.
  2. Cut slots into the body: Two on the sides for the arms, two on top of the head for the ears, and one into the backside for the tail. Insert the arms, ears, and tail, and glue or tape them on the inside of the body.
  3. Draw the NekoBean's face on the frontside with a felttip pen. Here you find some faces for inspiration.
  4. Glue the sides of the body together to form a cube -- when closing the cube, don't forget the legs: Make them stick out of the edge between the backside and the bottom.

End result: Meet my first makeshift Nekobean! (It was born solely of office materials... I colored the paper with a flipchart marker and glued it together with sticky tape...)

It hangs on nicely to a notebook screen, and it is equally well able to stand on flat surfaces. Thanks to Thiara for this hilarious tip!

PS: Now create your own and post photos!

Bistro! - January 05, 2009 12:16 PM
Happy 2009! ... while I was away

Wishing you all the very best for 2009 !

While I was away (as everyone else) here are the few things that caught my attention:
• My GlassFish article on JavaLobby made it into the top 10 most read of 2008. Nice. Top rated too :)
• Someone created mod_v8. Makes sense, but who cares? Performances is reported to be better vs. Rhino. Would love to see some numbers.
• Messages on the French developpez.com online forum for GlassFish has now more threads than WebLogic (stats). Next up: WebSphere number of messages. The GlassFish forum started years after all others. Many people mention GlassFish in EJB, JSF, and other sub-forums.
sherod made his TwitterFX client available. Still early days, rough edges, etc... but very functional. As the author puts it: "I started on the 9th of December, not knowing JavaFX - it's been about 1-3 hours a day through until now."

Adam Bien - January 05, 2009 07:35 AM
Netbeans 6.5 With Visual Ice Faces - Installation, Test, EJB 3 Integration, An Error And Solution

The installation of icefaces is very smooth. You don't even have to restart Netbeans 6.5 (and this without OSGI :-)) . It takes few minutes / seconds - it depends on your bandwidth (9MB). IceFaces installation enhances the web-project type, so you will get two additional choices in the "Frameworks" tab: ICEFaces and Visual Web ICEFaces. The latter choice let you design your page visually with drag and drop vrom pallette etc. - very much like woodstock. The first choice is for source editor only. Don't select both frameworks - it will not work...

First impressions:

  1. Visual Designer works really good - as already known from Woodstock.
  2. Page Flow designer works.
  3. EJB 3 injection of Stateless and Stateful Session Beans into managed beans works.
  4. Deployment to Glassfish v2 works.
  5. Declarative Data Binding (Value Binding) between ICEFaces components and JavaBeans (JPA-entities) works.
  6. "Start Page" support doesn not work. It generates in the web.xml something like this:

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>faces/Page1.jsp</welcome-file>
    </welcome-file-list>

This will cause an error in  case you will try to "Run" the application.

java.lang.NullPointerException
        at com.sun.faces.renderkit.RenderKitImpl.createResponseWriter(RenderKitImpl.java:169)
        at com.icesoft.faces.renderkit.D2DRenderKit.createResponseWriter(D2DRenderKit.java:82)
        at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:168)
        at com.icesoft.faces.application.D2DViewHandler.renderView(D2DViewHandler.java:151)
        at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:283)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)

Solution: Just delete the section <welcome-file-list> and change the Page1.jsp into Page1.iface. The URL should looks like: http://localhost:8080/[WAR_NAME]/Page1.iface. If you want to "Run" your application, put the Page1.iface (or your actual welcome page) into the Relative URL box in the Properties (Run) of your project.

I lost about one hour for finding a solution for the problem above, so my overall impression is just good and not very good :-).

NetBeans Zone - The social network for developers - January 04, 2009 08:07 PM
Updated NetBeans Java Editor Refcard for NetBeans IDE 6.5!

The NetBeans Java Editor Refcard has been updated to 6.5. Go here to download it. Based on a lot of useful comments received for the first release of this Refcard, which was for NetBeans IDE 6.1, several changes have been made. Some, in hindsight, superfluous sections have been removed, and this overview graphic has been added:

N, Varun » NetBeans - January 04, 2009 04:47 PM
Phase 3 | NetBeans Community Docs


Hi,

I am yet again blogging about Community Docs, this time not blogging personal experience but would like to give you a recap of events that brought changes to the way program was being driven and lot more news..

What exactly do we mean by Phase(s)?

Well, it all started when James and Amit started up official weblog for NetBeans Community Docs and announced that they are gearing up for “Phase II“, as they were done with getting 100 community-contributed docs..

So, there was no “Phase I”, I mean there was no articulation of it that they were in “Phase I” and are aiming for future phases. If they did have something, then I was not privileged enough to have that information ;)

I was neither in the NetBeans Community Docs Team nor in the NetBeans Dream Team..

Phase II | Blog and Groups..

Well, I can think of phases, as of how the project evolved? So, James announced lot of stuff for “Phase II” and soon, social networking began outside your inbox at a much larger scale..

my.netbeans.org and other established social networking sites translate into more ways for NetBeans community members to communicate with each other, start exciting projects, be in the know about NetBeans, and help to keep the NetBeans community strong and active.

Revolution was taking place and many people joined Facebook group, while few joined MySpace..

Midway through Phase II..

Changes in the team management took place, when I became Contribution Coordinator as Amit K. Saha moved into employment at Sun Microsystems, India..

Since then, lot has changed and I have kept you all updated with my personal experiences on being aboard the management of NetBeans Community Docs..

Phase III | Newsletters, Evangelists and More..

Phase III kicked off when we got 200 docs.. finally, we come towards “Phase III and again there wasn’t any specific articulation I could point you to, where we could have listed what all we would do..

Instead, our team had a Skype chat session and thereafter, we started executing the discussed ideas steadily, not at one-go!

Today, I can proudly say that all our ideas have resulted in timely goods.. Of course, community members were always there to support our ideas and helped us in realizing them..

Weekly Newsletters (20, 8, 7)

20 (20) English, 8 (20) Spanish and 7 (20) German were published.. We will be launching “Monthly Newsletters”, soon..

Blog Series- NetBeans Dream Team Docs

The posts of this special series were highlighted in weekly newsletters..

Special News Item Archive

and, some More Updates..

Whats Next?

We are 21 docs away from beginning the next phase of this amazing project/program, whatever you call it.. You would soon see some more out-of-the-box thinking taking place, at our side..

New Year has just begun and you’re in for many more surprises..
Stay tuned for more..

Posted in Community Docs, NetBeans, Phase II, Phase III      

Geertjan's Blog - January 04, 2009 04:08 PM
Cairo on the NetBeans Platform!

Today was day two of a three day NetBeans Platform Training in Cairo. The training is being held at the University of Cairo, but many of the students are from many other places—and most are either from software companies creating desktop applications or are teachers from universities and colleges. The course was organized via the Egyptian JUG, where you can find more pics (here).

Here's a pic of part of the group at the end of the 1st day:

The program of the course is as follows:

  • Day 1:
    • Getting Started with the NetBeans Platform
    • Lookup API
    • System FileSystem API
  • Day 2:
    • Window System API
    • Nodes API and Explorer & Property Sheet API
    • Visual Library API
  • Day 3:
    • Extending NetBeans IDE
    • Other Interesting NetBeans APIs
    • Ideas for Modules

I think this three day structure is much better than our normal two day course. But, maybe, sometime in the future, we could hold a workshop oriented course here, which would build on top of this one. It could take 5 days and at the end the students would have a complete application on top of the NetBeans Platform.

Interested in becoming trained to use the NetBeans Platform too? Write to users AT edu DOT netbeans DOT org. Especially schools, colleges, and universities interested in integrating this course into their standard curriculum are encouraged to invite us along: we'll come for free, depending on where you're located. NetBeans Platform trainers are found in many parts of the world, as you can read here on NetBeans Zone. And maybe you'd like to become a NetBeans Platform trainer too?

Adam Bien - January 04, 2009 08:54 AM
Best Of / Most Popular Entries (>10k views) In This Blog

  1. January: Domain Driven Design, EJB 3, JPA, Glassfish v2, JSF (Model View Presenter), Data Binding, Java DB ...or sports for Java Hackers [13203 views]
  2. February: Nice, but hidden, CRUD wizard in Netbeans 6.0 [17038 views]
  3. March: Eclipse 3.3 or NetBeans 6.0 - with surprising result [44679 views]
  4. April: High Level thinking about the introduction of closures in Java [12728 views]
  5. May: java.net@JavaONE: Which Programming Language J. Gosling would use now, except Java? [40156 views]
  6. June: First Indicators of Overengineering in Your Project [20027 views]
  7. July: First Week With Netbeans 6.5M1 - Some Smoke - But Interesting Directions [32204 views]
  8. August: First Week With Netbeans 6.5M1 - Some Smoke - But Interesting Directions [13744 views] and Useful Explanation: "iBATIS, Hibernate, and JPA: Which is right for you?", Strange Conclusion [12725 views]
  9. September: New UMLKit Available For Netbeans 6.5 - First Tests - Reverse Engineering Of EJB 3 Rocks [17808 views] and EJB 3.X ...the Consultants Killer [15303 views]
  10. October: Productive Java EE 6 - Rethinking Best Practices, Planned For San Jose, Takes Place in Krakow (JDD) ...and Netbeans Days, or Poland the "Java Land"? [4342 views]
  11. November: Eclipse RCP vs. Netbeans RCP - and what really counts [20086 views]
  12. December: Top Eight, Non Java, Netbeans 6.5 Features [31852 views]

So the winner seems to be:  Eclipse 3.3 or NetBeans 6.0 - with surprising result [44679 views]

The views above are monthly results - not overall views. The actual number should be much higher. RSS-Feed results are even not included in this statistic. What suprised me is the high number of visits a day. The daily average ranged from 3k - 4.5k.  Thanks to all readers / subscriber and especially for constructive comments! Feedback is highly appreciated.

Some overall stats:

Summary by Month
Month Daily Avg Monthly Totals
Hits Files Pages Visits Hosts KBytes Visits Pages Files Hits
Dec 2008 19955 17350 11225 4570 32264 15695635 141681 347996 537880 618631
Nov 2008 15402 12319 9027 3349 19468 13240661 100479 270832 369593 462074
Oct 2008 14753 11585 9620 3287 16059 14005297 101909 298234 359157 457344
Sep 2008 17825 14265 10173 3573 19249 15068533 107211 305198 427963 534777
Aug 2008 17280 13630 9521 3590 20059 14621088 111317 295165 422560 535694
Jul 2008 19936 15732 10770 3906 23417 15021836 121093 333888 487707 618040
Jun 2008 19545 15536 11399 3838 22382 13927917 115157 341970 466104 586360
May 2008 20966 16934 11208 4154 26671 16597906 128804 347458 524962 649954
Apr 2008 21220 16665 10834 4130 27886 19052403 123913 325020 499973 636600
Mar 2008 18901 13811 10210 3385 24515 13900018 104956 316533 428155 585932
Feb 2008 17751 12187 10756 3240 22073 12407522 93975 311945 353444 514799
The drop of traffic in October and November was caused by my Roller / Glassfish experiments, some offline-hours and many broken links :-).

Geertjan's Blog - January 03, 2009 06:59 PM
"NetBeans greatly simplifies plugin development" -- Jeff Friesen

Jeff Friesen (whose great book "Beginning Java SE 6 Platform: From Novice to Professional" I reviewed here on Javalobby) has written a great article, freshly published in JavaWorld:

The last sections of the article show you how to create a NetBeans plugin from scratch. These sections are prefaced by these words, which I thought were quite nice: "After trying out the previously discussed NetBeans plugins and others that you download from the NetBeans Plugins Portal, you'll probably want to create your own. If you're new to this task, you might find it somewhat intimidating. Fortunately, NetBeans greatly simplifies plugin development."

Go read it, right now!

Adam Bien - January 03, 2009 08:32 AM
Netbeans 6.5 Quicktip: Changing The Archive (EJB-JAR) Name, Deploying RARs

  1. Go to: [PROJECT_NAME]/nbproject/project.properties (using CTRL+2)
  2. The property: jar.name specifies the archive name which is going to be deployed to the server and copied into: [PROJECT_NAME]/dist as well.
Tip: if you change the ending from .jar to .rar you can misuse an EJB project to develop, debug and redeploy JCA connectors to Glassfish v2 - its really convenient.

Hulles - NetBeans - January 03, 2009 05:52 AM
...And Sorry For The Long Lines!

I try to remember to be RSS feed-friendly but my blog site editor wraps the lines when I preview the post and I have to manually cut them up for them to display correctly when I post. Obviously I forgot to do that with the last entry. That's probably why I'm on the blutwurst-refried beans-watery beer diet: it was preemptive retribution. -- Hulles

Hulles - NetBeans - January 03, 2009 04:06 AM
NB 6.5 Twitter SaaS Bug

This post concerns a bug in the Twitter SaaS service in NetBeans 6.5.

If you're using or have tried to use the Twitter SaaS service in NetBeans 6.5, you may have encountered a bug in NetBeans that gives you an error that looks something like this:

javax.xml.bind.UnmarshalException: unexpected element (uri:"", local:"nilclasses").
            Expected elements are <{}authenticated>,<{}authorized>,<
            {}direct-messages>,<{}direct_message>,<{}friends>,<
            {}hash>,<{}nil-classes>,<{}ok>,
            <{}status>,<{}statuses>,<{}user>
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext...
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.reportError(Lo...
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.reportError(Lo...
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.reportUnexpe...
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContex...
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContex...
...

I reported the bug via the official NetBeans channel but it's my first occasion to do that. Hopefully I did it correctly and will not be harshly reprimanded by the NetBeans Ministry of Love and put on a diet of blutwurst, refried beans and watery beer. Although come to think of it I'm on that diet anyway; I must have done something else bad recently to warrant it.


The error results from a small bug in the updated Twitter SaaS service code in NetBeans 6.5. It occurs when you (for example) try to get direct messages and there are no new ones. Under these circumstances Twitter now replies with a 200 (everything went swell) code but returns NilClasses, whereas it used to give a 310 error code. I can only imagine that someone somewhere is trying to migrate away from returning error codes when things happen normally so that consumer code doesn't throw exceptions.


Speaking of which, if you mask out the exception handling in the caller function you won't see the above message, you'll just get anomalous results in your direct messages (e.g.). This drove me crazy for a couple of days until I tracked down the result. "Bogofilter!" I muttered. "Ogg Vorbis!" (I swear when I'm frustrated.) Hence this short article to pass along the hard-won information.


I am also including a modified TwitterResponse.jar that you can plug into your code as a workaround until the bug is fixed by the NetBeans folks. Please note that you use it at your own risk. It was a simple change and I've used it without a hitch many many times since I created it, but it hasn't gone through the (presumably) rigorous QA process that happens at NetBeans HQ, wherever the hell that is. So my recommendation is that you should only download and install the jar if you work in a production environment and need the fix to stay productive; otherwise I strongly urge you to wait for the official fix. Also, if you don't already know what to do with the attached jar file you should probably wait as well. This patch is just to keep the fires burning for American industry until the real fix. You non-Americans can use the patch as well of course but you should delay installing it for a bit so that we in the United States can get a much-needed head start toward regaining our technical edge.


I hope this helps any others out there (American or not) who are currently muttering "Bogofilter!" to themselves. Let me know how it goes. Namaste.


-- Hulles

Tor Norbye's Weblog - January 02, 2009 07:37 PM
Ruby Code Coverage in the builds now


I've checked the Ruby code coverage code into the trunk now, so if you grab a recent daily 7.0 build, it should be there. I found a Windows-specific bug in the Python code coverage code as well, so grab a new build if you're on that platform.



I've had some fun with Java2D lately. Instead of the ugly coverage bars I showed in my screenshots a couple of weeks ago, the coverage bars now have proper gradients, drop shadows behind the text etc.:









Another thing I added is a bar in the editor footer (while code coverage is enabled) which lists the coverage percentage for the current file, along with actions to quickly run the tests again, or bring up the coverage report, or clear the results, or finish the coverage mode. As well as warn you when your data is older than your code.









And finally, I updated the built-in and extra color themes to also have color definitions for the coverage highlights. Here's the Dark Pastels color theme with coverage data enabled:









Please let me know of any problems while this code is still fresh in my mind :)

N, Varun » NetBeans - January 02, 2009 06:01 PM
Building Pizza with Lookup (Part 1)


Recently, I announced a blog series on making use of Lookup API along with  some design patterns in RCP Apps. So, I thought why not get started by porting some basic code snippets onto NetBeans Platform and then I shall see how to go about evolving them.

Builder Pattern

I will be beginning with Builder Pattern (a type of Creational Patterns). It does seem obvious with the title of the post- “Building” Pizza with Lookup.

Definition

The intention is to abstract steps of construction of object so that different implementations of these steps can construct different representations of objects.

Why Pizza?

Well, I came across a code sample which creates different types of Pizza using Builder Pattern. Hey, I have never made any Pizza on my own, but this seems to be a golden chance and that too through coding ;)

Getting Started

  • Run “NetBeans IDE” (I am using 6.5) which I had installed using JDK 1.5.10.
  • Next, press Ctrl + Shift + N or goto File > New Project…

New Project Wizard opens…

  • Choose NetBeans Modules as Category and NetBeans Platform Application as Project.

Name and Location Wizard opens…

  • Fill relevant information, and you would see project opens up in NetBeans Project Window (Ctrl + 1).

Right-click Project Node and see Project Properties, then select Libraries from visible Categories.

Now, you would see on the right-hand side, only some of the modules of platform9 cluster that are included by default in a RCP Application. Java Platform pointing to JDK 1.5.10 by default.

Overview of the Code Sample

The existing code sample has 6 classes, out of which 5 fit into Builder Pattern and the remaining class just runs the code sample to construct one of the types of pizza.

Builder (PizzaBuilder)

Abstract interface for creating objects (product).

Concrete Builder (HawaiianPizzaBuilder, SpicyPizzaBuilder)

Provide implementation for Builder. Construct and assemble parts to build the objects.

Director (Cook)

The Director class is responsible for managing the correct sequence of object creation. It receives a Concrete Builder as a parameter and executes the necessary operations on it.

Product (Pizza)

The final object that will be created by the Director using Builder.

The code above could be split into 6 separate “.java” files and stored under single package OR they could be inside a single “.java” file, wherein the filename would be same as that of the Main class.

Porting to NetBeans Platform

I have ported that sample into 4 modules which fits into the class diagram representation of Builder Pattern. The task of porting is simplified because of the Lookup API (Service Provider approach).

Assuming you have followed the guidelines stated in “Getting Started” section and have created a default NetBeans Platform Application (I have named it PizzaBeans) with “No Modules”. Now, we will create 3 modules and finally, move towards creating the 4th module, the one that interacts with the client.

To be continued…

Posted in Java, nb-65, NetBeans, Platform      

Adam Bien - January 02, 2009 12:12 PM
Softskills and Other Semi-Serious Posts

I'm refining now the slides for my first (at probably last :-)) "softskills" session  for the OOP 2009 conference in Munich. It is based on some older posts from this blog:

  1. How To Be A Java Guru Without Knowing Java.
  2. The VooDoo Consulting Style.
  3. Motivation over Experience
  4. A Perfect Developer Should
  5. ...but a Perfect Developer Needs
  6. Your Project Starts To Be Sub-Optimal If:
  7. The Ultimate Inteview Question

Big Al's Blog - January 02, 2009 01:08 AM
Christmas present from Sun

Just as the year was ended I got a great Christmas present from Sun Microsystems.

1) A cool NetBeans 10 year anniversary T-shirt for participating in the community acceptance test programme for NetBeans 6.5 (NetCAT)



2) A pass on my exam to become Sun Certified Specialist for NetBeans IDE

The exam was special to me as it was my first ever certification exam. My score was 82%, with the least score in questions about building Java SE applications. I guess it shows that I've never build Java SE applications on NetBeans. Otherwise I think the exam was great. Studying for the exam revealed a lot of useful features that I had never used before, but now wondering how I could ever live without. I can highly recommend doing the exam!

Thanks Sun!

N, Varun » NetBeans - January 01, 2009 02:44 PM
New Year, New Beginning!


For the past few days, I have been receiving mails, lots of them from friends, relatives and mailing lists, with their greetings for the new year.. I replied, forwarded and even chatted (with some) to greet them for vacation break and new year..

Blogosphere

I even saw Amit and James blogging about how the year 2008 was, as they wait to see newer challenges in the near future..

Indeed, today its a New Year, New Beginning! So, expect the unexpected.. As I take you down my memory lane, to recapture some of the defining moments of my life this year..

Well, I missed blogging yesterday as I was busy preparing for a written exam that took place yesterday, before I could celebrate the new year.. Actually, this was my 8th (incl. of viva’s, presentations, exams) in almost 4 weeks time ;)

Started with Emails..

2008 was an amazing year, so many up’s and down’s. It can’t get better than this..

Mails, Contests, T-shirts and DVDs..

I started off this year writing mails to dev@usersguide.netbeans.org and organizing events for JIIT Sun Club (lat