<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Francisco Benitez Leon&#039;s Blog</title>
	<atom:link href="http://franciscobenitezleon.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://franciscobenitezleon.wordpress.com</link>
	<description></description>
	<lastBuildDate>Sat, 17 Dec 2011 23:48:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='franciscobenitezleon.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Francisco Benitez Leon&#039;s Blog</title>
		<link>http://franciscobenitezleon.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://franciscobenitezleon.wordpress.com/osd.xml" title="Francisco Benitez Leon&#039;s Blog" />
	<atom:link rel='hub' href='http://franciscobenitezleon.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Installing Debian Lenny on virtualized ARM arch (with QEMU) on Ubuntu Karmic Koala</title>
		<link>http://franciscobenitezleon.wordpress.com/2010/02/05/installing-debian-lenny-on-virtualized-arm-arch-with-qemu-on-ubuntu-karmic-koala/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2010/02/05/installing-debian-lenny-on-virtualized-arm-arch-with-qemu-on-ubuntu-karmic-koala/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 21:42:47 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[QEMU]]></category>

		<guid isPermaLink="false">http://franciscobenitezleon.wordpress.com/?p=227</guid>
		<description><![CDATA[Yesterday I played with QEMU in order to run a Debian Lenny distro on a virtualized ARM arch.  The Debian installation was easy thanks to this post of Chris Dew. I just wanted to point out what I did to get the virtual machine running after installing the distro. First, I&#8217;ll summarize his post because [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=227&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Yesterday I played with <a title="QEMU" href="http://www.qemu.org/" target="_blank">QEMU</a> in order to run a Debian Lenny distro on a virtualized <a title="ARM" href="http://en.wikipedia.org/wiki/ARM_architecture" target="_blank">ARM arch</a>.  The Debian installation was easy thanks to <a title="How to install Debian Lenny on ARM on Qemu on Ubuntu Jaunty" href="http://www.finalcog.com/howto-install-debian-lenny-arm-qemu-ubuntu-jaunty" target="_blank">this post</a> of <a title="Chris Dew" href="http://www.finalcog.com/" target="_blank">Chris Dew</a>. I just wanted to point out what I did to get the virtual machine running after installing the distro.</p>
<p>First, I&#8217;ll summarize his post because I changed one of his steps.</p>
<ol>
<li>Download the <a title="ARM EABI Port" href="http://wiki.debian.org/ArmEabiPort" target="_blank">ARMEL</a> kernel image and installer (initrd image) from a Debian Lenny repository.<br />
<code><br />
$ wget http://ftp.de.debian.org/debian/dists/lenny/main/installer-armel/current/images/versatile/netboot/initrd.gz<br />
$ wget http://ftp.de.debian.org/debian/dists/lenny/main/installer-armel/current/images/versatile/netboot/vmlinuz-2.6.26-2-versatile<br />
</code></li>
<li>Create a disk image but use the <strong>raw format</strong> so you could mount it on your system after the installation process has finished.<br />
<code><br />
$ qemu-img create -f raw hda.img 1G<br />
</code></li>
<li>Start QEMU and follow the usual Debian installation instructions.<br />
<code><br />
$ qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-2-versatile \<br />
-hda hda.img -initrd initrd.gz -append "root=/dev/ram" -m 256<br />
</code></li>
</ol>
<p>At the end of the installation process you will get a message pointing that Grub hasn&#8217;t been installed but don&#8217;t worry because QEMU is capable of loading the kernel and initrd images so the machine could boot up.</p>
<p>After the installation has ended you will need another initrd to run the machine, remember that the one previously used contains the Debian installer. You can get that from the installed distro. So, mount the created disk on your system (that&#8217;s why you needed to create it in raw format) and copy the image from the boot directory.<br />
<code><br />
$ sudo mkdir -p /mnt/arm_qemu<br />
$ sudo mount -o loop,offset=32256 hda.img /mnt/arm_qemu<br />
$ sudo cp /mnt/arm_qemu/boot/initrd.img-2.6.26-2-versatile .<br />
$ sudo umount /mnt/arm_qemu<br />
</code></p>
<p>You can run the machine with the following command.<br />
<code><br />
$ qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-2-versatile \<br />
-initrd initrd.img-2.6.26-2-versatile -hda hda.img -append "root=/dev/sda1"<br />
</code></p>
<br />Filed under: <a href='http://franciscobenitezleon.wordpress.com/category/arm/'>ARM</a>, <a href='http://franciscobenitezleon.wordpress.com/category/virtualization/'>Virtualization</a> Tagged: <a href='http://franciscobenitezleon.wordpress.com/tag/linux/'>Linux</a>, <a href='http://franciscobenitezleon.wordpress.com/tag/qemu/'>QEMU</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/227/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=227&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2010/02/05/installing-debian-lenny-on-virtualized-arm-arch-with-qemu-on-ubuntu-karmic-koala/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>
	</item>
		<item>
		<title>Giving a hand with JMUnit</title>
		<link>http://franciscobenitezleon.wordpress.com/2009/09/22/giving-a-hand-with-jmunit/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2009/09/22/giving-a-hand-with-jmunit/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 17:46:44 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[Mobility]]></category>
		<category><![CDATA[JMUnit]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://franciscobenitezleon.wordpress.com/?p=211</guid>
		<description><![CDATA[I don&#8217;t know why I haven&#8217;t blogged on this before but that&#8217;s it, I was added as a developer of the JMUnit project three weeks ago. I posted in the JMUnit forum about the patch I made to avoid the TestSuite execution problem and four days after I was discussing JMUnit 2 features with Carl [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=211&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t know why I haven&#8217;t blogged on this before but that&#8217;s it, I was added as a developer of the <a title="JMUnit" href="http://jmunit.sourceforge.net/" target="_blank">JMUnit</a> project three weeks ago. I posted in the JMUnit forum about the <a title="JMUnit Revised" href="http://sites.google.com/site/franciscobenitezleon/projects/jmunit-revised" target="_blank">patch</a> I made to avoid the <code>TestSuite</code> execution problem and four days after I was discussing JMUnit 2 features with Carl A. Meijer (one of the administrators of JMUnit). Carl was kind enough to contact me, suggest me how to enhance the patch runners and include me as a member of the project. Not only I am enjoying working on JMUnit but I am also learning a lot in the process. Thank you Carl!</p>
<p>JMUnit 2 looks promising and JMUnit 1 users will love the new release. It will include new features, solve known problems, as the <code>TestSuite</code> execution one, be more convenient to use and, besides that, porting your old tests will be plain and simple. The code is almost finished and the delay in releasing it will lie in the proof-of-concept plug-ins we want to include for Eclipse and NetBeans.</p>
<p>Hopefully, you will be able to use JMUnit 2 soon.</p>
<br />Posted in Mobility Tagged: JMUnit, Testing <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/211/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=211&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2009/09/22/giving-a-hand-with-jmunit/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>
	</item>
		<item>
		<title>Revisiting JMUnit, JMUnit Revised 2.0</title>
		<link>http://franciscobenitezleon.wordpress.com/2009/08/15/revisiting-jmunit-jmunit-revised-2-0/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2009/08/15/revisiting-jmunit-jmunit-revised-2-0/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 18:04:56 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[Java ME]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[JMUnit]]></category>
		<category><![CDATA[JMUnit Revised]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://franciscobenitezleon.wordpress.com/?p=198</guid>
		<description><![CDATA[Some days ago I published a post introducing a patch for JMUnit that I use for being able to execute TestSuites. After releasing the patch, I tried to integrate it into NetBeans hacking the mobility pack to get the patched library working with the mobility wizards for creating unit tests. However, due to the design [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=198&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Some days ago I published a <a title="Surpassing JMUnit CLDC 1.1 TestSuite execution barrier on real devices" href="http://franciscobenitezleon.wordpress.com/2009/08/04/surpassing-jmunit-cldc-1-1-testsuite-execution-barrier-on-real-devices/" target="_blank">post</a> introducing a <a title="JMUnit Revised 1.0" href="http://sites.google.com/site/franciscobenitezleon/projects/jmunit-revised" target="_blank">patch for JMUnit</a> that I use for being able to execute TestSuites. After releasing the patch, I tried to integrate it into NetBeans hacking the mobility pack to get the patched library working with the mobility wizards for creating unit tests. However, due to the design of the patched sources it was impossible to achieve. I also detected a problem with the design that was preventing <code>TestSuite</code> from creating the TestCases read from the Application descriptor (I have never used the custom property <tt>JMUnitTestClasses</tt> since I started using the modified JMUnit sources).</p>
<p>Based on the general idea of eliminating MIDlet from the inheritance chain I have redesigned the patch, instead of passing a <code>MIDlet</code> to <code>Test</code> in its constructor, <code>Test</code> has to be initialized with a <code>MIDlet</code> before creating any Test object (<code>TestCase</code>, <code>TestSuite</code> or <code>TestRunner</code>). The new desing doesn&#8217;t break any of the features of JMUnit, its usage is much simpler  and it can be almost fully integrated in NetBeans, as I will explain next week.</p>
<p>You could download the patch and know more of this new release at <a title="JMUnit Revised 2.0" href="http://sites.google.com/site/franciscobenitezleon/projects/jmunit-revised/jmunit-revised-2-0" target="_blank">JMUnit Revised 2.0</a>.</p>
<br />Posted in Java ME Tagged: Development, JMUnit, JMUnit Revised, Testing <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/198/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=198&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2009/08/15/revisiting-jmunit-jmunit-revised-2-0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>
	</item>
		<item>
		<title>Integrating S60 3rd Edition FP1 SDK for Symbian OS with NetBeans IDE 6.5</title>
		<link>http://franciscobenitezleon.wordpress.com/2009/08/13/integrating-s60-3rd-edition-fp1-sdk-for-symbian-os-with-netbeans-ide-6-5/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2009/08/13/integrating-s60-3rd-edition-fp1-sdk-for-symbian-os-with-netbeans-ide-6-5/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 22:17:05 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[Java ME]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[S60]]></category>
		<category><![CDATA[Symbian]]></category>

		<guid isPermaLink="false">http://franciscobenitezleon.wordpress.com/?p=107</guid>
		<description><![CDATA[Recently I broke part of my developing environment consisting of a NetBeans IDE 6.1 installation, on Windows XP SP2, in which I had integrated several Java ME platforms for developing mobile applications. I tried to install the S60 5th Edition SDK for Symbian OS without paying to much attention and trying to fix the mess [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=107&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently I broke part of my developing environment consisting of a <a title="NetBeans IDE 6.1" href="http://www.netbeans.org/downloads/6.1/index.html" target="_blank">NetBeans IDE 6.1</a> installation, on Windows XP SP2, in which I had integrated several Java ME platforms for developing mobile applications. I tried to install the <a title="S60 5th Edition SDK for Symbian OS" href="http://www.forum.nokia.com/info/sw.nokia.com/id/577ad48d-290c-4bb5-8bdf-779ea8a5bc6c/S60_5th_Edition_SDK_v1_0_en.zip.html" target="_blank">S60 5th Edition SDK for Symbian OS</a> without paying to much attention and trying to fix the mess (I wasn&#8217;t able to launch applications on the SDK from NetBeans) I ended up breaking two more platforms, the <a title="S60 3rd Edition FP1 SDK for Symbian OS" href="http://www.forum.nokia.com/info/sw.nokia.com/id/4a7149a5-95a5-4726-913a-3c6f21eb65a5/S60-SDK-0616-3.0-mr.html" target="_blank">S60 3rd Edition FP1 SDK for Symbian OS</a> and the <a title="S60 3rd Edition FP2 SDK for Symbian OS" href="http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html">FP2 SDK</a>.</p>
<p>I decided to reinstall the platforms and I thought it was worth upgrading the IDE, so I tried to set up the same environment with <a title="NetBeans IDE 6.7" href="http://www.netbeans.org/downloads/6.7/index.html" target="_blank">NetBeans IDE 6.7</a> and the S60 SDKs. Unfortunately I had no success, I&#8217;m not sure but I think it was because of the ActivePerl version. The S60 3rd Ed. FP2 requires <a title="ActivePerl 5.6.1.638" href="http://downloads.activestate.com/ActivePerl/Windows/5.6/" target="_blank">ActivePerl 5.6.1.638</a> or newer and the S60 5th Ed. SDK requires exactly the 5.6.1 version, I had installed <a title="ActivePerl 5.10.0.1005" href="http://www.activestate.com/activeperl/downloads/" target="_blank">ActivePerl 5.10.0.1005</a>. At this time I had to reinstall again so I used google and read that the NetBeans recommended version for S60 5th Ed. was 6.5. You know how this end, I set up the environment correctly with <a title="NetBeans IDE 6.5" href="http://www.netbeans.org/downloads/6.5/index.html" target="_blank">NetBeans IDE 6.5</a>. I added the three S60 SDKs as Java ME platforms to NetBeans and tested all the configurations. You have to be patient with S60 SDKs as they all emulate the complete Symbian OS and have a long startup time. Sometimes the first time you launch an application on the emulator from the NetBeans, a <code>NullPointerException</code> is thrown because the emulator takes too long to start.  In these cases I relaunch the process and everything works like a charm.</p>
<p>So I had all my new development environment set up and working, and  then &#8230;</p>
<p>&#8230; I realized of the NetBeans&#8217; Project Platform Properties window for the S60 3rd Ed. FP1 SDK, where were the optional packages?</p>
<p style="text-align:center;">
<div id="attachment_156" class="wp-caption aligncenter" style="width: 624px"><img class="size-full wp-image-156" title="NetBeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS, most optional packages missing" src="http://franciscobenitezleon.files.wordpress.com/2009/08/netbeans-project-platform-properties-window-s603rdedfp12.png" alt="NetBeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS, most optional packages missing" width="614" height="485" /><p class="wp-caption-text">NetBeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS, most optional packages missing</p></div>
<p>The fact is that it seems that the Optional Packages choice group is not working properly for this Java ME Platform. The only package that is selectable is the Java ME Web Services package but whether you select it or not it is always present. You could check it adding the following lines to one <code>MIDlet</code>:</p>
<p><pre class="brush: java;">
import javax.xml.namespace.QName; //part of JSR-172 Java ME Web Services
...
          public void startApp()  {
                     ...
                     QName test = QName(&quot;test&quot;);
                     ...
          }
...
</pre></p>
<p>It will compile whether you checked the JSR-000172 or not, it is enabled by default as you will see. This is an inconvenience as I don&#8217;t want to add more libraries than the extrictly necessary.</p>
<p>I didn&#8217;t want to reinstall again so I added the platform to my NetBeans 6.1 and looked at the Project Platform Properties window, and all the optional packages were selectable. I guess that something had changed in NetBeans from versions 6.1 to 6.5 that was preventing the IDE from discriminating among these optional packages.</p>
<p>I am going to tell you how I managed to solve this problem but if you don&#8217;t know how to add the platforms to the IDE you could follow <a href="http://www.javamidlet.com/2008/07/12/how-to-install-the-nokia-s60-sdk-in-netbeans-for-j2me-development.html" target="_blank">these guidelines</a> first.</p>
<h2>Making S60 3rd Edition FP1 SDK optional packages selectable from NeatBeans 6.5</h2>
<p>To be successful you&#8217;ll need to have installed NetBeans IDE 6.5, S60 3rd Edition FP1 and FP2 SDKs (first install the IDE and next you should install the SDKs following its installation instructions). The SDKs have to be integrated with NetBeans as Java ME platforms, and at last you&#8217;ll have to do a little hacking with the SDKs and NetBeans to get it working.</p>
<p>The Java ME platform configuration files in NetBeans are located in:</p>
<p><tt>%USERDIR%\.netbeans\6.5\config\Services\Platforms\org-netbeans-api-java-Platform</tt></p>
<p>, you will see one for each Java ME platform you have added. Before going any further you should spend some time understanding the <a title="NetBeans Java ME Platform definition DTD 1.0" href="http://www.netbeans.org/dtds/j2me-platformdefinition-1_0.dtd" target="_blank">NetBeans Java ME Platform definition DTD 1.0</a> which is really simple. Here is a brief formatted description of the main elements presented in the DTD:</p>
<ul>
<li>Element <code>platform</code> &#8211; defines the Java ME platform with the following  attributes:
<ul>
<li><code>name</code> &#8211; identification of the platform. The platform is always referenced by the name so the name must be unique among all installed platforms within the IDE.</li>
<li><code>home</code> &#8211; base folder of the platform installation.</li>
<li><code>type</code> &#8211; platform type.  Valid values are currently: UEI-1.0, UEI-1.0.1, and CUSTOM.</li>
<li><code>displayname</code> &#8211; displayed name of the platform. When not specified name is used instead.</li>
<li><code>srcpath</code> &#8211; optional list of folders, jars and zip files with platform sources.</li>
<li><code>docpath</code> &#8211; optional list of folders, jars, zip files and URLs containing platform JavaDoc.</li>
</ul>
</li>
<li>Element <code>device</code> &#8211; defines the devices supported by the Java ME platform, with the following  attributes:
<ul>
<li><code>name</code> &#8211; device name is the unique identification of the device within the platform.</li>
<li><code>description</code> &#8211; optional description of the device.</li>
</ul>
<p>And the following elements:</p>
<ul>
<li><code>configuration</code> &#8211; Java ME device configuration. It should be at least one present. Its attributes are:
<ul>
<li><code>name</code> &#8211; configuration name will usually be CLDC.</li>
<li><code>version</code> &#8211; version number in text format. For example: 1.0</li>
<li><code>displayname</code> &#8211; expanded name of the configuration. For example: Connected Limited Device Configuration.</li>
<li><code>classpath</code> &#8211; comma separated list of folders, jars and zip files that belong to the configuration.</li>
<li><code>default</code> &#8211; boolean specifying if this configuration is default. Valid values are true or false. Exactly one configuration must be set as default.</li>
</ul>
</li>
<li><code>profile</code> &#8211; Java ME device profile. It should be at least one present. Its attributes are:
<ul>
<li><code>name</code> &#8211; profile name will usually be MIDP.</li>
<li><code>version</code> &#8211; version number in text format. For example 1.0.</li>
<li><code>dependencies</code> &#8211; list of configuration dependencies.</li>
<li><code>displayname</code> &#8211; expanded name of the profile. For example: Mobile Information Device Profile.</li>
<li><code>classpath</code> &#8211; comma separated list of folders, jars and zip files that belong to the profile.</li>
<li><code>default</code> &#8211; boolean specifying if this profile is default. Valid values are true or false. Exactly one profile must be set as default.</li>
</ul>
</li>
<li><code>optional</code> &#8211; Java ME device optional packages. It could be present none, one or more. Its attributes are:
<ul>
<li><code>name</code> &#8211; optional API name, for example MMAPI.</li>
<li><code>version</code> &#8211; version number in text format, for example 1.0.</li>
<li><code>dependencies</code> &#8211; list of dependencies on configurations, profiles, or other optional APIs of the same device.</li>
<li><code>displayname</code> &#8211; expanded name of the optional API. For example: Mobile Media API.</li>
<li><code>classpath</code> &#8211; comma separated list of folders, jars and zip files that belong to the optional API.</li>
<li><code>default</code> &#8211; boolean identification specifying if this optional API is enabled by default. Valid values are true or false. Any number of optional APIs may be enabled by default. As I told you before, in the added S60 3rd Edition FP1 SDK all the optional packages are enabled by default.</li>
</ul>
</li>
<li><code>screen</code> &#8211; device screen details. If present there shouldn&#8217;t be more than one. Its attributes are:
<ul>
<li><code>width</code></li>
<li><code>height</code></li>
<li><code>bitDepth</code></li>
<li><code>isColor</code> &#8211; <code>true</code> by default</li>
<li><code>isTouch</code> &#8211; <code>false</code> by default</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>Now that you are an expert on NetBeans Java ME Platform definition DTD 1.0 we could go on and inspect the S60 FP1 platform <tt>XML</tt> configuration file. In my case is named <tt>S60_3rd_Edition_FP1_SDK_for_MIDP.xml</tt> and its content, skipped the S60Device section for clarity, is:</p>
<p><pre class="brush: xml;">
&lt;?xml version='1.0'?&gt;
&lt;!DOCTYPE platform PUBLIC '-//NetBeans//DTD J2ME PlatformDefinition 1.0//EN' 'http://www.netbeans.org/dtds/j2me-platformdefinition-1_0.dtd'&gt;
&lt;platform name=&quot;S60_3rd_Edition_FP1_SDK_for_MIDP&quot; home=&quot;C:\S60\devices\S60_3rd_MIDP_SDK_FP1&quot; type=&quot;UEI-1.0&quot; displayname=&quot;S60 3rd Edition FP1 SDK for MIDP&quot; srcpath=&quot;&quot; docpath=&quot;${platform.home}/docs/AMMS_JSR-234,${platform.home}/docs/Bluetooth_JSR-82,${platform.home}/docs/CLDC1.1_JSR-139,${platform.home}/docs/FileConnectionOptionalPackage_JSR-75,${platform.home}/docs,${platform.home}/docs/Location_JSR-179,${platform.home}/docs/MIDProfile_JSR-118,${platform.home}/docs/Mobile3DGraphics_JSR-184,${platform.home}/docs/MobileMedia_JSR-135,${platform.home}/docs/NokiaUI,${platform.home}/docs/PIMOptionalPackage_JSR-75,${platform.home}/docs/SATSA_JSR-177,${platform.home}/docs/Scalable2DVectorGraphics_JSR-226,${platform.home}/docs/SDK_Help,${platform.home}/docs/SIP_JSR-180,${platform.home}/docs/WebServicesjaxp_JSR-172,${platform.home}/docs/WebServicesjaxrpc_JSR-172,${platform.home}/docs/WMA_2.0,${platform.home}/docs/WMA_JSR-120,${platform.home}/S60examples/AMMSMIDlet/doc/javadoc,${platform.home}/S60examples/btl2capEcho/doc/javadoc,${platform.home}/S60examples/btsppEcho/doc/javadoc,${platform.home}/S60examples/capitalclient/doc/javadoc,${platform.home}/S60examples/capitalservlet/build/javadoc,${platform.home}/S60examples/chat/doc/javadoc,${platform.home}/S60examples/devicecap/doc/javadoc,${platform.home}/S60examples/doc-files,${platform.home}/S60examples/fileconnection/doc/javadoc,${platform.home}/S60examples/filehandler/doc/javadoc,${platform.home}/S60examples/golfhelper/doc/javadoc,${platform.home}/S60examples/hawk/doc/javadoc,${platform.home}/S60examples/helloworldplus/doc/javadoc,${platform.home}/S60examples/m3g/doc/javadoc,${platform.home}/S60examples/mms/doc/javadoc,${platform.home}/S60examples/personalcontroller/doc/javadoc,${platform.home}/S60examples/pki/doc/javadoc,${platform.home}/S60examples/push/doc/javadoc,${platform.home}/S60examples/security/doc/javadoc,${platform.home}/S60examples/sheepdog/doc/javadoc,${platform.home}/S60examples/shopping/doc/javadoc,${platform.home}/S60examples/sip/doc/javadoc,${platform.home}/S60examples/svg/doc/javadoc,${platform.home}/S60examples/XMLParser/doc/javadoc,&quot;&gt;
    &lt;device name=&quot;S60Emulator&quot; description=&quot;S60Emulator&quot;&gt;
        &lt;optional name=&quot;JSR172&quot; version=&quot;1.0&quot; displayname=&quot;Java ME Web Services&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;OBEX&quot; version=&quot;1.0&quot; displayname=&quot;Object Exchange APIs&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR179&quot; version=&quot;1.0&quot; displayname=&quot;Location Based APIs&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR75&quot; version=&quot;1.0&quot; displayname=&quot;File Connection and PIM Optional Packages&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;WMA&quot; version=&quot;2.0&quot; displayname=&quot;Wireless Messaging API&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR82&quot; version=&quot;1.0&quot; displayname=&quot;Java APIs for Bluetooth Wireless Technology&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR184&quot; version=&quot;1.0&quot; displayname=&quot;Mobile 3D Graphics Optional Package&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
&lt;profile name=&quot;MIDP&quot; version=&quot;2.0&quot; displayname=&quot;Mobile Information Device Profile&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;NOKIAUI&quot; version=&quot;1.0&quot; displayname=&quot;Nokia User Interface&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;configuration name=&quot;CLDC&quot; version=&quot;1.1&quot; displayname=&quot;Connected Limited Device Configuration&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;MMAPI&quot; version=&quot;1.0&quot; displayname=&quot;Mobile Media API&quot; classpath=&quot;${platform.home}/lib/hmidps60v31.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;screen width=&quot;240&quot; height=&quot;320&quot; bitDepth=&quot;12&quot; isColor=&quot;true&quot; isTouch=&quot;false&quot;/&gt;
    &lt;/device&gt;
    &lt;device name=&quot;S60Device&quot; description=&quot;S60Device&quot;&gt;
        ...
    &lt;/device&gt;
&lt;/platform&gt;
</pre></p>
<p>As you can see all the optional packages are bundled with the configuration (CLDC 1.1) and profile (MIDP 2.0) in the file <tt>hmidps60v31.jar</tt>. This is because the SDK implementation presents its complete Java ME execution environment in one <tt>jar</tt>.</p>
<p>In the case of the S60 FP2 platform most of the optional packages are standalone jars, as you can see in its NetBeans&#8217; Java ME platform configuration <tt>XML</tt> file, named <tt>S60_3rd_Edition_SDK_for_Symbian_OS__Feature_Pack_2_v1_1.xml</tt>:</p>
<p><pre class="brush: xml;">
&lt;?xml version='1.0'?&gt;
&lt;!DOCTYPE platform PUBLIC '-//NetBeans//DTD J2ME PlatformDefinition 1.0//EN' 'http://www.netbeans.org/dtds/j2me-platformdefinition-1_0.dtd'&gt;
&lt;platform name=&quot;S60_3rd_Edition_SDK_for_Symbian_OS__Feature_Pack_2_v1_1&quot; home=&quot;C:\S60\devices\S60_3rd_FP2_SDK_v1.1&quot; type=&quot;UEI-1.0.1&quot; displayname=&quot;S60 3rd Edition SDK for Symbian OS, Feature Pack 2 v1.1&quot; srcpath=&quot;&quot; docpath=&quot;${platform.home}/docs,${platform.home}/docs/javadocs/GUID-07274ED2-697C-4987-ABE9-7FFE82605633,${platform.home}/docs/javadocs/GUID-0D0A1092-5037-4421-B466-B958CB777414,${platform.home}/docs/javadocs/GUID-233D0FA4-C649-4220-829B-5CEA8B6559DD,${platform.home}/docs/javadocs/GUID-237420DE-CCBE-4A74-A129-572E0708D428,${platform.home}/docs/javadocs/GUID-2508C2ED-C0BE-4512-9302-6805AB7ACB0E,${platform.home}/docs/javadocs/GUID-32B0EEEB-D06F-4387-8133-DF5F0D0C0D70,${platform.home}/docs/javadocs/GUID-47BB9F00-FE65-484D-BD71-F54AF5884D32,${platform.home}/docs/javadocs/GUID-4AEC8DAF-DDCC-4A30-B820-23F2BA60EA52,${platform.home}/docs/javadocs/GUID-654A42A3-C453-411A-A153-366C08AEF058,${platform.home}/docs/javadocs/GUID-67FFFB36-2BD8-442C-A4A8-252289CA2B3C,${platform.home}/docs/javadocs/GUID-71D2FC38-3A7C-4F69-9A2C-C307ABF33D6C,${platform.home}/docs/javadocs/GUID-8F9BE454-FC5E-4B87-B805-765DEFA66C99,${platform.home}/docs/javadocs/GUID-9F75713D-5642-4C39-9A33-C20928F37BF7,${platform.home}/docs/javadocs/GUID-A8A297BB-EA23-4E2C-A9D1-6403BBEE0CD9/Appendix2-javadocs,${platform.home}/docs/javadocs/GUID-A8A297BB-EA23-4E2C-A9D1-6403BBEE0CD9,${platform.home}/docs/javadocs/GUID-D3E35E6F-0C45-48ED-B09D-F716E14C1C02,${platform.home}/docs/javadocs/GUID-D69FC49D-783E-45CE-80D4-7A9F3EE08B2A,${platform.home}/S60CppExamples/AddressBook/doc,${platform.home}/S60CppExamples/aiwconsumerbasics/doc,${platform.home}/S60CppExamples/Animation/doc,${platform.home}/S60CppExamples/AudioStreamExample/doc,${platform.home}/S60CppExamples/BrCtlSampleApp/doc,${platform.home}/S60CppExamples/Chat/doc,${platform.home}/S60CppExamples/CLFExample/doc,${platform.home}/S60CppExamples/ClientServerAsync/doc,${platform.home}/S60CppExamples/ClientServerSync/doc,${platform.home}/S60CppExamples/Contacts/doc,${platform.home}/S60CppExamples/DataMobility/doc,${platform.home}/S60CppExamples/DirectoryLocalizerEx/doc,${platform.home}/S60CppExamples/DriveInfo/doc,${platform.home}/S60CppExamples/DynamicSettingList/doc,${platform.home}/S60CppExamples/Filelist/doc,${platform.home}/S60CppExamples/finditemtestapp/doc,${platform.home}/S60CppExamples/Focusevent/doc,${platform.home}/S60CppExamples/Graphics/doc,${platform.home}/S60CppExamples/GuiEngine/doc,${platform.home}/S60CppExamples/helloworldbasic/doc,${platform.home}/S60CppExamples/HelpExample/doc,${platform.home}/S60CppExamples/hwrmtestapp/doc,${platform.home}/S60CppExamples/IMOpenAPIExample/doc,${platform.home}/S60CppExamples/IsvTelCallApp/doc,${platform.home}/S60CppExamples/IsvTelInfoApp/doc,${platform.home}/S60CppExamples/Listbox/doc,${platform.home}/S60CppExamples/Localization/doc,${platform.home}/S60CppExamples/LocationLandmarksRefAppForS60/doc,${platform.home}/S60CppExamples/LocationLandmarksUIRefApp/doc,${platform.home}/S60CppExamples/LocationRefAppForS60/doc,${platform.home}/S60CppExamples/LocationSatViewRefApp/doc,${platform.home}/S60CppExamples/Messaging/doc,${platform.home}/S60CppExamples/MyView/doc,${platform.home}/S60CppExamples/Note/doc,${platform.home}/S60CppExamples/NPBitmap/doc,${platform.home}/S60CppExamples/OcrExample/doc,${platform.home}/S60CppExamples/OpenC_Ex/antiword/doc,${platform.home}/S60CppExamples/OpenC_Ex/handleglobalvar/doc,${platform.home}/S60CppExamples/OpenC_Ex/openchelloglibeventex/doc,${platform.home}/S60CppExamples/OpenC_Ex/openclibz/doc,${platform.home}/S60CppExamples/OpenC_Ex/opencmessagequeuelibraryex/doc,${platform.home}/S60CppExamples/OpenC_Ex/opencopenglex/doc,${platform.home}/S60CppExamples/OpenC_Ex/opencproducerconsumerex/doc,${platform.home}/S60CppExamples/OpenC_Ex/OpenCStringUtilitiesEx/doc,${platform.home}/S60CppExamples/OpenC_Ex/redirectprintf/doc,${platform.home}/S60CppExamples/OpenC_Ex/simulateactiveobject/doc,${platform.home}/S60CppExamples/OpenGLEx/Billboard/doc,${platform.home}/S60CppExamples/OpenGLEx/Bumpmap/doc,${platform.home}/S60CppExamples/OpenGLEx/EnvMapping/doc,${platform.home}/S60CppExamples/OpenGLEx/FloatingDuck/doc,${platform.home}/S60CppExamples/OpenGLEx/Hierarchy/doc,${platform.home}/S60CppExamples/OpenGLEx/LensFlare/doc,${platform.home}/S60CppExamples/OpenGLEx/Mipmapping/doc,${platform.home}/S60CppExamples/OpenGLEx/MultiTex/doc,${platform.home}/S60CppExamples/OpenGLEx/Particles/doc,${platform.home}/S60CppExamples/OpenGLEx/PickSelect/doc,${platform.home}/S60CppExamples/OpenGLEx/Rain/doc,${platform.home}/S60CppExamples/OpenGLEx/Shadows/doc,${platform.home}/S60CppExamples/OpenGLEx/SimpleCube/doc,${platform.home}/S60CppExamples/OpenGLEx/SimpleCubePbuffer/doc,${platform.home}/S60CppExamples/OpenGLEx/SimpleCubePixmap/doc,${platform.home}/S60CppExamples/OpenGLEx/SimpleLight/doc,${platform.home}/S60CppExamples/OpenGLEx/Slideshow/doc,${platform.home}/S60CppExamples/OpenGLEx/Snow/doc,${platform.home}/S60CppExamples/OpenGLEx/Texture/doc,${platform.home}/S60CppExamples/PopupField/doc,${platform.home}/S60CppExamples/PopupList/doc,${platform.home}/S60CppExamples/ProgressBar/doc,${platform.home}/S60CppExamples/Query/doc,${platform.home}/S60CppExamples/Registration/doc,${platform.home}/S60CppExamples/RichTextEditor/doc,${platform.home}/S60CppExamples/SIPExample/doc,${platform.home}/S60CppExamples/UnitEditorEx/doc,${platform.home}/S60CppExamples/WebClient/doc,${platform.home}/S60CppExamples/_doc,${platform.home}/S60MIDPExamples/IAPInfoMIDlet/doc/javadoc,&quot;&gt;
    &lt;device name=&quot;S60Emulator&quot; securitydomains=&quot;Manufacturer,Operator,Trusted_Third_Party,Untrusted,User_defined,Minimal&quot; description=&quot;S60Emulator&quot;&gt;
        &lt;optional name=&quot;JSR172&quot; version=&quot;1.0&quot; displayname=&quot;Java ME Web Services&quot; classpath=&quot;${platform.home}/lib/JSR172.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR234&quot; version=&quot;1.0&quot; displayname=&quot;ADVANCE MULTIMEDIA SUPPLEMENT&quot; classpath=&quot;${platform.home}/lib/JSR234.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;OBEX&quot; version=&quot;1.0&quot; displayname=&quot;Object Exchange APIs&quot; classpath=&quot;${platform.home}/lib/JSR82.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;SATSA&quot; version=&quot;1.2&quot; displayname=&quot;Security APIs&quot; classpath=&quot;${platform.home}/lib/JSR177.jar&quot; dependencies=&quot;CLDC &gt; 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR179&quot; version=&quot;1.0&quot; displayname=&quot;Location Based APIs&quot; classpath=&quot;${platform.home}/lib/JSR179.jar&quot; dependencies=&quot;CLDC &gt;= 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR75&quot; version=&quot;1.0&quot; displayname=&quot;File Connection and PIM Optional Packages&quot; classpath=&quot;${platform.home}/lib/JSR75.jar&quot; dependencies=&quot;CLDC = 1.1&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR226&quot; version=&quot;1.0&quot; displayname=&quot;MOBILE 2D Graphics&quot; classpath=&quot;${platform.home}/lib/JSR226.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
&lt;profile name=&quot;MIDP&quot; version=&quot;2.1&quot; displayname=&quot;Mobile Information Device Profile&quot; classpath=&quot;${platform.home}/lib/midp21.jar&quot; dependencies=&quot;CLDC &gt; 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;WMA&quot; version=&quot;2.0&quot; displayname=&quot;Wireless Messaging API&quot; classpath=&quot;${platform.home}/lib/wma20.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;WMA&quot; version=&quot;1.1&quot; displayname=&quot;Wireless Messaging API&quot; classpath=&quot;${platform.home}/lib/wma11.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;J2ME-XMLRPC&quot; version=&quot;1.0&quot; displayname=&quot;J2ME XML/RPC&quot; classpath=&quot;${platform.home}/lib/JSR172.jar&quot; dependencies=&quot;CLDC &gt;= 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR180&quot; version=&quot;1.0&quot; displayname=&quot;SIP&quot; classpath=&quot;${platform.home}/lib/JSR180.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR82&quot; version=&quot;1.1&quot; displayname=&quot;Java APIs for Bluetooth Wireless Technology&quot; classpath=&quot;${platform.home}/lib/JSR82.jar&quot; dependencies=&quot;CLDC&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR184&quot; version=&quot;1.0&quot; displayname=&quot;Mobile 3D Graphics Optional Package&quot; classpath=&quot;${platform.home}/lib/JSR184.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
&lt;profile name=&quot;MIDP&quot; version=&quot;2.0&quot; displayname=&quot;Mobile Information Device Profile&quot; classpath=&quot;${platform.home}/lib/midp20.jar&quot; dependencies=&quot;CLDC &gt; 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;ESWT&quot; version=&quot;1.0.3&quot; displayname=&quot;ESWT&quot; classpath=&quot;${platform.home}/lib/eswt.jar&quot; dependencies=&quot;CLDC = 1.1&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;NOKIAUI&quot; version=&quot;1.0&quot; displayname=&quot;Nokia User Interface&quot; classpath=&quot;${platform.home}/lib/JSR139.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;MMAPI&quot; version=&quot;1.2&quot; displayname=&quot;Mobile Media API&quot; classpath=&quot;${platform.home}/lib/JSR135.jar&quot; dependencies=&quot;CLDC &gt; 1.0&quot; default=&quot;true&quot;/&gt;
        &lt;configuration name=&quot;CLDC&quot; version=&quot;1.1&quot; displayname=&quot;Connected Limited Device Configuration&quot; classpath=&quot;${platform.home}/lib/JSR139.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;MMAPI&quot; version=&quot;1.0&quot; displayname=&quot;Mobile Media API&quot; classpath=&quot;${platform.home}/lib/midp21.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;screen width=&quot;240&quot; height=&quot;320&quot; bitDepth=&quot;12&quot; isColor=&quot;true&quot; isTouch=&quot;false&quot;/&gt;
    &lt;/device&gt;
    &lt;device name=&quot;S60Device&quot; securitydomains=&quot;Manufacturer,Operator,Trusted_Third_Party,Untrusted,User_defined,Minimal&quot; description=&quot;S60Device&quot;&gt;
         ...
    &lt;/device&gt;
&lt;/platform&gt;
</pre></p>
<p>This seems to confirm the hypothesis about the bundled <tt>jar</tt> with the optional packages being the cause of the problem. To make them selectable in the Project&#8217;s Platform Properties window you&#8217;ll have to copy, for the optional packages in <tt>S60_3rd_Edition_FP1_SDK_for_MIDP.xml</tt>, the standalone jars from the S60 FP2 SDK <tt>lib</tt> directory (e.g. <tt>C:\S60\devices\S60_3rd_FP2_SDK_v1.1\lib</tt>) to the S60 FP1 SDK <tt>lib</tt> directory (<tt>C:\S60\devices\S60_3rd_MIDP_SDK_FP1\lib</tt>).</p>
<p>To know which <tt>jar</tt> you&#8217;ll have to copy from S60 FP2 <tt>lib</tt> to S60 FP1 <tt>lib</tt> you should consult the NetBeans Java ME Platform configuration file for the S60 3rd Edition FP2 SDK, <tt>S60_3rd_Edition_SDK_for_Symbian_OS__Feature_Pack_2_v1_1.xml</tt>. For example, to know which <tt>jar</tt> I should use as S60 3rd Edition FP1 SDK Java ME Web Services (JSR-172) I look for this optional package in <tt>S60_3rd_Edition_SDK_for_Symbian_OS__Feature_Pack_2_v1_1.xml</tt> and copy the required <tt>jar</tt>, <tt>JSR172.jar</tt>, from the S60 FP2 <tt>lib</tt> to the S60 FP1 <tt>lib</tt> directory.<br />
<tt><br />
copy %S60_3RD_EDITION_FP2_SDK_HOME%\lib\JSR172.jar %S60_3RD_EDITION_FP1_SDK_HOME%\lib<br />
</tt><br />
Where,</p>
<ul>
<li><tt>S60_3RD_EDITION_FP1_SDK_HOME = C:\S60\devices\S60_3rd_MIDP_SDK_FP1</tt> is the <tt>HOME</tt> path for the S60 3rd Edition FP1 SDK.</li>
<li><tt>S60_3RD_EDITION_FP2_SDK_HOME = C:\S60\devices\S60_3rd_FP2_SDK_v1.1</tt> is the <tt>HOME</tt> path for the S60 3rd Edition FP2 SDK.</li>
</ul>
<p>Next, you should update the<tt> S60_3rd_Edition_FP1_SDK_for_MIDP.xml</tt> file with these new libraries or add a new Java ME platform. I chose to add a new one named &#8220;S60 3rd Edition FP1 SDK for MIDP New&#8221; and leave unchanged the original one:</p>
<p><pre class="brush: xml;">
&lt;?xml version='1.0'?&gt;
&lt;!DOCTYPE platform PUBLIC '-//NetBeans//DTD J2ME PlatformDefinition 1.0//EN' 'http://www.netbeans.org/dtds/j2me-platformdefinition-1_0.dtd'&gt;
&lt;platform name=&quot;S60_3rd_Edition_FP1_SDK_for_MIDP_New&quot; home=&quot;C:\S60\devices\S60_3rd_MIDP_SDK_FP1&quot; type=&quot;UEI-1.0&quot; displayname=&quot;S60 3rd Edition FP1 SDK for MIDP New&quot; srcpath=&quot;&quot; docpath=&quot;${platform.home}/docs/AMMS_JSR-234,${platform.home}/docs/Bluetooth_JSR-82,${platform.home}/docs/CLDC1.1_JSR-139,${platform.home}/docs/FileConnectionOptionalPackage_JSR-75,${platform.home}/docs,${platform.home}/docs/Location_JSR-179,${platform.home}/docs/MIDProfile_JSR-118,${platform.home}/docs/Mobile3DGraphics_JSR-184,${platform.home}/docs/MobileMedia_JSR-135,${platform.home}/docs/NokiaUI,${platform.home}/docs/PIMOptionalPackage_JSR-75,${platform.home}/docs/SATSA_JSR-177,${platform.home}/docs/Scalable2DVectorGraphics_JSR-226,${platform.home}/docs/SDK_Help,${platform.home}/docs/SIP_JSR-180,${platform.home}/docs/WebServicesjaxp_JSR-172,${platform.home}/docs/WebServicesjaxrpc_JSR-172,${platform.home}/docs/WMA_2.0,${platform.home}/docs/WMA_JSR-120,${platform.home}/S60examples/AMMSMIDlet/doc/javadoc,${platform.home}/S60examples/btl2capEcho/doc/javadoc,${platform.home}/S60examples/btsppEcho/doc/javadoc,${platform.home}/S60examples/capitalclient/doc/javadoc,${platform.home}/S60examples/capitalservlet/build/javadoc,${platform.home}/S60examples/chat/doc/javadoc,${platform.home}/S60examples/devicecap/doc/javadoc,${platform.home}/S60examples/doc-files,${platform.home}/S60examples/fileconnection/doc/javadoc,${platform.home}/S60examples/filehandler/doc/javadoc,${platform.home}/S60examples/golfhelper/doc/javadoc,${platform.home}/S60examples/hawk/doc/javadoc,${platform.home}/S60examples/helloworldplus/doc/javadoc,${platform.home}/S60examples/m3g/doc/javadoc,${platform.home}/S60examples/mms/doc/javadoc,${platform.home}/S60examples/personalcontroller/doc/javadoc,${platform.home}/S60examples/pki/doc/javadoc,${platform.home}/S60examples/push/doc/javadoc,${platform.home}/S60examples/security/doc/javadoc,${platform.home}/S60examples/sheepdog/doc/javadoc,${platform.home}/S60examples/shopping/doc/javadoc,${platform.home}/S60examples/sip/doc/javadoc,${platform.home}/S60examples/svg/doc/javadoc,${platform.home}/S60examples/XMLParser/doc/javadoc,&quot;&gt;
    &lt;device name=&quot;S60Emulator&quot; description=&quot;S60Emulator&quot;&gt;
        &lt;optional name=&quot;JSR172&quot; version=&quot;1.0&quot; displayname=&quot;J2ME Web Services&quot; classpath=&quot;${platform.home}/lib/JSR172.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;OBEX&quot; version=&quot;1.0&quot; displayname=&quot;Object Exchange APIs&quot; classpath=&quot;${platform.home}/lib/JSR82.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR179&quot; version=&quot;1.0&quot; displayname=&quot;Location Based APIs&quot; classpath=&quot;${platform.home}/lib/JSR179.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR75&quot; version=&quot;1.0&quot; displayname=&quot;File Connection and PIM Optional Packages&quot; classpath=&quot;${platform.home}/lib/JSR75.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
		&lt;optional name=&quot;JSR226&quot; version=&quot;1.0&quot; displayname=&quot;MOBILE 2D Graphics&quot; classpath=&quot;${platform.home}/lib/JSR226.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;WMA&quot; version=&quot;2.0&quot; displayname=&quot;Wireless Messaging API&quot; classpath=&quot;${platform.home}/lib/wma20.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR82&quot; version=&quot;1.0&quot; displayname=&quot;Java APIs for Bluetooth Wireless Technology&quot; classpath=&quot;${platform.home}/lib/JSR82.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;JSR184&quot; version=&quot;1.0&quot; displayname=&quot;Mobile 3D Graphics Optional Package&quot; classpath=&quot;${platform.home}/lib/JSR184.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
&lt;profile name=&quot;MIDP&quot; version=&quot;2.0&quot; displayname=&quot;Mobile Information Device Profile&quot; classpath=&quot;${platform.home}/lib/midp20.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;NOKIAUI&quot; version=&quot;1.0&quot; displayname=&quot;Nokia User Interface&quot; classpath=&quot;${platform.home}/lib/JSR139.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;configuration name=&quot;CLDC&quot; version=&quot;1.1&quot; displayname=&quot;Connected Limited Device Configuration&quot; classpath=&quot;${platform.home}/lib/JSR139.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;optional name=&quot;MMAPI&quot; version=&quot;1.0&quot; displayname=&quot;Mobile Media API&quot; classpath=&quot;${platform.home}/lib/midp21.jar&quot; dependencies=&quot;&quot; default=&quot;true&quot;/&gt;
        &lt;screen width=&quot;240&quot; height=&quot;320&quot; bitDepth=&quot;12&quot; isColor=&quot;true&quot; isTouch=&quot;false&quot;/&gt;
    &lt;/device&gt;
    &lt;device name=&quot;S60Device&quot; description=&quot;S60Device&quot;&gt;
        ...
    &lt;/device&gt;
&lt;/platform&gt;
</pre></p>
<p>You should use these new libraries with caution as you have added jars that could have parts which aren&#8217;t compatible with the S60 3rd Edition FP1 Java ME execution environment. This is the case of the <tt>midp21.jar</tt> used for the MMAPI.</p>
<p>If you want you could also update the corresponding documentation setting the attribute <tt>docpath</tt> of the element <tt>platform</tt> in the Java ME platform configuration <tt>XML</tt> file (this property is not set in the above example).</p>
<p>Once this has been done, go to your Project&#8217;s Platform Properties window and watch the results:</p>
<p style="text-align:center;">
<div id="attachment_137" class="wp-caption aligncenter" style="width: 624px"><img class="size-full wp-image-137" title="Netbeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS with selectable optional packages" src="http://franciscobenitezleon.files.wordpress.com/2009/08/netbeans-project-platform-properties-window-s603rdedfp1-with-selectable-optional-packages.png" alt="Netbeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS with selectable optional packages" width="614" height="485" /><p class="wp-caption-text">Netbeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS with selectable optional packages</p></div>
<p>Now you will be able to select the optional packages that you need. I have tested some applications built with this modified platform and seems to work well on both emulators and real devices, but the truth is that I have not done an extensive testing with all the APIs.</p>
<p>If you have any problems and want help or if you know a <strong>more stylish way</strong> of solving this inconvenience, let me know.</p>
<br />Posted in Java ME Tagged: Development, NetBeans, Nokia, S60, Symbian <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/107/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=107&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2009/08/13/integrating-s60-3rd-edition-fp1-sdk-for-symbian-os-with-netbeans-ide-6-5/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>

		<media:content url="http://franciscobenitezleon.files.wordpress.com/2009/08/netbeans-project-platform-properties-window-s603rdedfp12.png" medium="image">
			<media:title type="html">NetBeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS, most optional packages missing</media:title>
		</media:content>

		<media:content url="http://franciscobenitezleon.files.wordpress.com/2009/08/netbeans-project-platform-properties-window-s603rdedfp1-with-selectable-optional-packages.png" medium="image">
			<media:title type="html">Netbeans Project Platform Properties window for S60 3rd Edition FP1 for Symbian OS with selectable optional packages</media:title>
		</media:content>
	</item>
		<item>
		<title>Surpassing JMUnit CLDC 1.1 TestSuite execution barrier on real devices</title>
		<link>http://franciscobenitezleon.wordpress.com/2009/08/04/surpassing-jmunit-cldc-1-1-testsuite-execution-barrier-on-real-devices/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2009/08/04/surpassing-jmunit-cldc-1-1-testsuite-execution-barrier-on-real-devices/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 18:07:33 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[Java ME]]></category>
		<category><![CDATA[Mobility]]></category>
		<category><![CDATA[JMUnit]]></category>
		<category><![CDATA[JMUnit Revised]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://franciscobenitezleon.wordpress.com/?p=13</guid>
		<description><![CDATA[If you have developed Java ME mobile applications and you have used JMUnit for unit testing (which I strongly recommend), you would probably have noticed that TestSuites can&#8217;t be executed on some real devices (as Nokia® or Motorola® mobiles) and simulators/emulators (as Symbian 3rd Editon FP1 and FP2 or Java ME SDK) . This is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=13&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have developed Java ME mobile applications and you have used <a title="JMUnit" href="http://sourceforge.net/projects/jmunit/" target="_blank">JMUnit</a> for unit testing (which I strongly recommend), you would probably have noticed that TestSuites can&#8217;t be executed on some real devices (as Nokia® or Motorola® mobiles) and simulators/emulators (as Symbian 3rd Editon <a title="Symbian 3rd Edition FP1" href="http://www.forum.nokia.com/info/sw.nokia.com/id/4a7149a5-95a5-4726-913a-3c6f21eb65a5/S60-SDK-0616-3.0-mr.html" target="_blank">FP1</a> and <a title="Symbian 3rd Edition FP2" href="http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html" target="_blank">FP2</a> or <a title="Java Micro Edition SDK" href="http://java.sun.com/javame/downloads/sdk30.jsp" target="_blank">Java ME SDK</a>) . This is due to the fact that MIDlets can&#8217;t create other MIDlets for security reasons (as stated in <a title="JSR118" href="http://jcp.org/en/jsr/detail?id=118" target="_self">JSR118</a> only the application management software can do this), so if you try it you will get a <code>SecurityException</code>.</p>
<p>As explained in JMUnit manual section 3.1, the problem is that <code>TestCase</code> and <code>TestSuite</code> extends <code>Test</code>, which extends <code>Assertion</code>, which extends <code>MIDlet</code> =). So with any <code>TestCase</code> that you add to your <code>TestSuite</code> (which is already a <code>MIDlet</code>) you are adding another MIDlet and that&#8217;s why you would get a <code>SecurityException</code> when executing your <code>TestSuite</code>. To avoid this you will have to modify JMUnit source code and break this inheritance chain.</p>
<p style="text-align:center;"><img class="size-full wp-image-42 aligncenter" title="Breaking JMUnit inheritance chain (MIDlet dependency)" src="http://franciscobenitezleon.files.wordpress.com/2009/08/jmunit-midlet-inheritance-chain5.png" alt="Breaking JMUnit inheritance chain (MIDlet dependency)" width="450" height="251" /></p>
<p style="text-align:center;">
<p style="text-align:center;">
<p style="text-align:center;">
<p>The process to break the chain is really easy: eliminate <code>MIDlet</code> from the inheritance chain, pass a <code>MIDlet</code> reference (<code>midletRef</code>) to whichever classes that use MIDlet&#8217;s methods and substitute these methods invocations for <code>midletRef.method()</code>. There&#8217;s one step more after breaking the chain as there is another class that uses <code>MIDlet</code> via <code>Test,</code> <code>GuiListener</code> has to be modified too.</p>
<p>I have complete this process in a project called JMUnit Revised. You could take a deep look at the process followed to modify JMUnit1.2.1 CLDC1.1 sources, download a patch and consult the usage at <a title="JMUnit Revised" href="http://sites.google.com/site/franciscobenitezleon/projects/jmunit-revised" target="_blank">JMUnit Revised project&#8217;s page</a> at my personal <a title="Francisco Benitez Leon's Personal site" href="http://sites.google.com/site/franciscobenitezleon/" target="_self">site</a>. After creating a <tt>jar</tt> with the patched JMUnit1.2.1 CLDC1.1 sources and following the usage instructions you will be able to run your TestSuites on most real devices and simulators/emulators.</p>
<p>Now keep up happy testing! <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />Posted in Java ME, Mobility Tagged: JMUnit, JMUnit Revised, Nokia, Testing <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/13/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=13&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2009/08/04/surpassing-jmunit-cldc-1-1-testsuite-execution-barrier-on-real-devices/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>

		<media:content url="http://franciscobenitezleon.files.wordpress.com/2009/08/jmunit-midlet-inheritance-chain5.png" medium="image">
			<media:title type="html">Breaking JMUnit inheritance chain (MIDlet dependency)</media:title>
		</media:content>
	</item>
		<item>
		<title>Hello World! Where will this be going to?</title>
		<link>http://franciscobenitezleon.wordpress.com/2009/07/29/hello-world/</link>
		<comments>http://franciscobenitezleon.wordpress.com/2009/07/29/hello-world/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 09:45:48 +0000</pubDate>
		<dc:creator>Francisco Benitez Leon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Honestly, I can&#8217;t say at the moment &#8230; But stay tuned to discover! And welcome! PS &#8211; Meanwhile you can always take a look at the categories and tags on the side bar. Posted in Uncategorized<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=1&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Honestly, I can&#8217;t say at the moment &#8230;</p>
<p>But stay tuned to discover! And welcome!</p>
<p>PS &#8211; Meanwhile you can always take a look at the categories and tags on the side bar.</p>
<br />Posted in Uncategorized  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/franciscobenitezleon.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/franciscobenitezleon.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/franciscobenitezleon.wordpress.com/1/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=franciscobenitezleon.wordpress.com&amp;blog=8781178&amp;post=1&amp;subd=franciscobenitezleon&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://franciscobenitezleon.wordpress.com/2009/07/29/hello-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/bcca64227b62ba0da9fc8211b32f571c?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Francisco Benítez</media:title>
		</media:content>
	</item>
	</channel>
</rss>
