<HTML>
<HEAD>
<title>netbeans.org: NetBeans Weekly News Issue #222 - Dec 21, 2005</title>
<META NAME="description" CONTENT="Newsletter 2005-12-21">

<link rel="stylesheet" type="text/css" href="/netbeans.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">

<!-- ====================================================== -->
<!-- Please do not edit this file by hand, it is rebuilt    -->
<!-- automatically and your changes will be lost.  Contact  -->
<!-- webmaster for details.  Rebuilt at                     -->
<!-- #TIMESTAMP# 21-Dec 12:10 CET                          -->
<!-- ====================================================== -->
</HEAD>
<BODY>

<h1>NetBeans Weekly News<br>Issue #222 - Dec 21, 2005</h1><hr>
NetBeans Weekly News, a newsletter for the NetBeans community<br>
Issue #222 - Dec 21, 2005<br>
URL: &lt;<a href='https://netbeans.org/community/news/newsletter/2005-12-21.html'>https://netbeans.org/community/news/newsletter/2005-12-21.html</a>&gt;<br>
Interested in becoming a newsletter editor?  We're always looking<br>
for editors to help out. Contact <a href='mailto:nbnews_contrib@netbeans.org'>nbnews_contrib@netbeans.org</a><br>
Please send news contributions to <a href='mailto:nbnews_contrib@netbeans.org'>nbnews_contrib@netbeans.org</a><br>
<hr><pre>The NetBeans Teams Wishes You a Happy New Year!
The next NetBeans Weekly newsletter will be sent January 2, 2006 due to the
holidays. See You Next Year!

Win an iPod Nano in the NetBeans Look and Feel Competition
Have you customised your NetBeans IDE Look & Feel? Share your customisation
and you could win one of three iPod Nanos, 10 USB flash memory sticks or 30
NetBeans T-Shirts! Don't know how? No problem there is documentation.
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=189">http://services.netbeans.org/newsletter/story.php?id=189</a>&gt;

Review: Building Web Services and Rich Clients with NetBeans IDE 5.0
"NetBeans 4.0 and 4.1 have made tremendous inroads among amateur and
professional Java developers alike, and version 5.0 is almost guaranteed to
continue this trend. NetBeans 5.0 is arguably the best freeware IDE available
for Java development, and many programmers prefer it over expensive
commercial packages. There is little doubt that NetBeans will continue down
the path to success for a long time to come." Full story at SOA Pipeline:
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=190">http://services.netbeans.org/newsletter/story.php?id=190</a>&gt;

Sun Adds Support for Open Source Java Database
Sun Microsystems has announced that it is incorporating its open source Java
DB database into the latest version of the Sun Java Enterprise System. It was
also announced that a plug-in for Java DB will come with NetBeans IDE 5.0.
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=191">http://services.netbeans.org/newsletter/story.php?id=191</a>&gt;

Building JAX-WS 2.0 Services with NetBeans
Doug Kohlert's writes, "If any of you have wanted to try JAX-WS but are not
sure where to get started, this white paper gives you step-by-step
instructions on configuring NetBeans to run JAX-WS and building a simple Web
Service endpoint and a Web Service Client. The paper also tells you how you
can debug both the server side Web Service and the client in NetBeans."
Continue to the full article by Bobby Bissett.
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=192">http://services.netbeans.org/newsletter/story.php?id=192</a>&gt;

Module Suite Building Tips (Part II)
Via Rich Unger's blog, "I think I'm one of the first people to make a
NetBeans module suite with a large number of modules, so as a follow up to
my last entry on module suite building,
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=193">http://services.netbeans.org/newsletter/story.php?id=193</a>&gt;
I thought I'd continue putting up some of my build script hacks." Read more:
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=194">http://services.netbeans.org/newsletter/story.php?id=194</a>&gt;

NetBeans and Eclipse Comparison: Building Web Apps - No Contest
Power blogger Charles Ditzel sheds some light on a common on Web Apps and
more. "At a customer meeting, someone asked me how easy was it to build a
web app using NetBeans. They were familiar with Eclipse and the question
actually has value generally because it is an interesting point of
comparison between Eclipse and NetBeans."
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=195">http://services.netbeans.org/newsletter/story.php?id=195</a>&gt;

NetBeans Day Toronto - Photos & Trip Report
Read the latest trip report from NetBeans Day 2005 in Toronto, complete
with photos.
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=197">http://services.netbeans.org/newsletter/story.php?id=197</a>&gt;

EJB 3.0 Client in J2SE Project
Petr Blaha shows how you can create a client for EJB 3.0 in a J2SE project.
Take a look at this short and sweet blog entry:
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=198">http://services.netbeans.org/newsletter/story.php?id=198</a>&gt;

Where in the World is Geertjan Wielenga?
Geertjan is on vacation. Can you guess which one of the location/activities
is the true one?
&lt;<a href="http://services.netbeans.org/newsletter/story.php?id=198">http://services.netbeans.org/newsletter/story.php?id=198</a>&gt; </pre><hr>This issue of NetBeans Weekly News was brought to you by Robert Demmer.<br>
The next editor will be Robert Demmer. (New volunteers are welcome!)<br>
Please send news contributions to <a href='mailto:nbnews_contrib@netbeans.org'>nbnews_contrib@netbeans.org</a></BODY>
</HTML>