
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>NetBeans Weekly Newsletter, Issue # 334</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<meta name="keywords" content="NetBeans, IDE, Platform, free, open source, developer" >
</head>
<body>
<style>
body {
		margin:5px 15px 5px 15px;
		font-size: 11px;
		font-family: Verdana, "Verdana CE",  Arial, "Arial CE", "Lucida Grande CE", lucida, "Helvetica CE", sans-serif;
		background-color:#e3eaf1;
		text-align:center;
}
				
#letter {width:533px;margin-left:auto;margin-right:auto;}
#head {background-image:url("http://services.netbeans.org/appl2/shared_images/head.png");width:533px;height:70px;background-repeat:none;}
#issue-date {padding-top:50px;text-align:center; color:white;}
#footer {background-image:url("http://services.netbeans.org/appl2/shared_images/footer.png"); width:533px;height:28px;background-repeat:none;}
#footer-text {padding-top:5px;color:#6a6b6d;text-align:center;}
#content {border-right:3px solid #747d9e;border-left:3px solid #747d9e; background-color:white; text-align:left; color:#6a6b6d; padding:13px 20px 13px 13px; }
#letter h1 {font-size: 14px; font-weight:normal; margin:3px 0px 5px 0px; padding:0px;color: #EE6B00; border-bottom:1px solid silver;}
#letter h2 {color:#2C3C79;font-size: 13px; font-weight:normal;margin:0px 0px 2px 0px;padding:0px; border:0px;}
#letter p {padding: 0px;margin:0px; text-align:justify;}
#letter a:link, a:visited { color: #045491; font-weight : normal; text-decoration: none;}
#letter a:link:hover, a:visited:hover  { color: #045491; font-normal : bold; text-decoration : underline;}
.item {margin-left:8px; margin-bottom:9px;}
.bold {font-weight:bold;}
#letter a.orange {color: #EE6B00;}
.align-right {text-align:right;}     
.align-center {text-align:center;}  
.edited {margin:15px -20px 0px -13px;padding-top:8px;text-align:center;}
.edge-top {background-color: #f0f7ff;padding:7px 12px 7px 7px;margin-bottom:10px; border:1px solid #747d9e;}
</style>

				
<div id="letter">
	<div id="head">
		<div id="issue-date" class="bold">
				Issue # 334 - Mar 25, 2008
		</div>
	</div>
	<div id="content">
	
				<h1>Project News</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1676">Download NetBeans IDE 6.1 Beta, Post a Blog & Win $500!</a></h2>
						<p style="margin-left:8px;"><img src='http://services.netbeans.org/appl2/show_image.php?id=786&column=image&table=story&type=image/jpeg&db=xnetbeans&db_type=pear&id_col=story_id' 
		height='88' width='100' alt='image' style='float:left; margin-right:5px;margin-bottom:5px;'/>
						Download and test the latest version of the NetBeans IDE and tell the world what you think. Post a blog about the features you like most or your experience using NetBeans and you could win $500 or a cool NetBeans t-shirt! The contest ends April 18, 2008.</p><br style="clear:both;"/>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1679">Bug Fixes for NetBeans 6.0 & 6.0.1 Now Available</a></h2>
						<p style="margin-left:8px;">
						NetBeans has released a new patch, which is a small update to the NetBeans 6.0 and 6.0.1 IDEs. The patch includes several bug fixes in modules for C/C++, Composite Application, IDE Platform, Java Profiler, Java, NetBeans 6.0, Platform, Subversion, UML, Visual JSF, Web Applications, and Web Services.<br><br>
To obtain the fixes, the NetBeans IDE must be installed and running. You can download the fixes through the IDE's Plugin Manager.</p>
					</div>
				<h1>Calendar</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1677">EURUKO 2008 - European Ruby Conference (Prague, March 29)</a></h2>
						<p style="margin-left:8px;">
						European Ruby Conference (EURUKO) is an annual conference about the Ruby programming language for Ruby professionals and enthusiasts. Meet the NetBeans team at our booth and see NetBeans Ruby support in action!</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1682">Register for NetBeans Day at CommunityOne! (San Francisco, May 5th)</a></h2>
						<p style="margin-left:8px;"><img src='http://services.netbeans.org/appl2/show_image.php?id=809&column=image&table=story&type=image/jpeg&db=xnetbeans&db_type=pear&id_col=story_id' 
		height='73' width='110' alt='image' style='float:left; margin-right:5px;margin-bottom:5px;'/>
						Attend <b>NetBeans Day at CommunityOne</b> to hear and see what's new in the NetBeans IDE; have lunch with the Java Posse; meet with NetBeans experts and fellow NetBeans developers; and grab cool NetBeans swag. Attendance is free, but seats are limited, so register now!</p><br style="clear:both;"/>
					</div>
				<h1>Articles</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1680">SIP and Java in NetBeans IDE 6.1</a></h2>
						<p style="margin-left:8px;">
						SIP (Session Initiation Protocol) technology is behind many of today's popular services, such as VoIP, instant messaging, and web conferencing. Underpinning SIP is the SIP Servlet, initially defined in JSR-116, and since then, updated in JSR-289. Geertjan Wielenga interviews two developers who are creating SIP support in NetBeans IDE 6.1.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1681">NetBeans, Oracle & JetBrains Meet at IDE Shootout 2008</a></h2>
						<p style="margin-left:8px;">
						Following JUG Cologne's successful IDE shootout last year, NetBeans returned in March 2008 to face Oracle and JetBrains in Rome and Genoa. This event recap from JUG Genoa includes photos, links to blogs and presentation slides.</p>
					</div>
				<h1>Training</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1678">Visual Mobile Designer Palatte Reference Page</a></h2>
						<p style="margin-left:8px;">
						Everything you wanted to know about the Visual Mobile Designer for mobile applications, but were afraid to ask is now revealed. This page gives a complete description of all the components in the VMD palette and includes links to related tutorials for each of the components where available. Get the information you need to make effective use of all the functionality the Mobility pack delivers!</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1683">Developing a Visual Web JSF Application with NetBeans IDE 6.0</a></h2>
						<p style="margin-left:8px;">
						This tutorial provides steps for using the NetBeans IDE and JSF 1.2 (Woodstock) components to create and run a simple web application: Hello Web.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1684">Building Composite Applications with NetBeans IDE 6.0</a></h2>
						<p style="margin-left:8px;">
						Learn how to develop Composite Applications with the NetBeans IDE.  In this video which is linked from Prakash Narayan's blog entry, you are walked through the end-to-end process of creating a composite application.</p>
					</div>
				<h1>Blogs</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1685">Using the MySQL Administrator Tool in NetBeans IDE 6.1 Beta</a></h2>
						<p style="margin-left:8px;">
						The NetBeans Support Team shows how easy it is to launch the MySQL Administrator Tool from within the NetBeans IDE 6.1 Beta.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1686">Shared Libraries in NetBeans IDE 6.1 Beta</a></h2>
						<p style="margin-left:8px;">
						IT consultant Allan Lykke Christensen writes about the Shared Libraries functionality in the NetBeans 6.1 Beta release and includes steps for enabling the feature.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1687">Lookup API Outside the NetBeans Platform</a></h2>
						<p style="margin-left:8px;">
						Need a way to use the Lookup API it outside of the NetBeans Platform? Geertjan Wielenga provides a short answer in this blog entry that also includes a link to a tutorial about the benefits of the the API and its use outside of the NetBeans Platform.</p>
					</div>
	<div class="edited">
	This issue was brought to you by: Tinuola Awopetu<br/>If you do not want to receive this newsletter, you can <a href="https://netbeans.org/community/lists/top.html">unsubscribe here</a>
	</div>
	</div>
	<div id="footer">
		<div id="footer-text">
				This newsletter is accessible also at  <a href="https://netbeans.org/community/news/newsletter/2008-03-25.html">www.netbeans.org</a>, 
				<a href="https://netbeans.org/community/news/newsletter/archive.html">newsletter archive</a>
		</div>
	</div>

</body>
</html>