Tuesday Aug 31, 2010

NetBeans Mobility at JavaOne and Oracle World 2010

This year we are going to show how to use Java ME Location API to build application to track and share current users position. During our HOL participants create a mobile application which uses the Java ME Location API to track a user's friends and display them on a map. Additionally, this mobile application allows the user to exchange status with friends and shows them on a map along with their photos and names. This HOL is aimed at developers who would like to learn how to bind application content with the current position of an application user.

Participants will learn:

  • How to use Java ME Location API
  • How to use maps web services in a Java ME application
  • How to use Java ME Generic Connection Framework
  • How to use visual tools to design the flow and UI of the application
  • This application can be used with Yahoo Maps (which we are going to use during HOL) or Google Maps (license restrictions).

    Details about HOL:

    Thursday: 3:30PM
    Where My Friends Are: Java ME Location API in Practice
    Stream(s): JAVAONE
    Track(s): Java ME and Mobile
    • S314126
    • [HOL]
    • Hilton San Francisco/Plaza A

    Tuesday Mar 30, 2010

    Netbeans Mobility 6.9 for MAC OS X

    Some time ago I blogged about Early Access of Java ME SDK 3.0 for Mac OS X (which is successor of Wireless Toolkit). Currently Java ME SDK 3.0 is stable and developers who use Mac OS X can use it with Netbeans 6.8. In this case it's necessary to separately download Netbeans 6.8, Java ME SDK 3.0 and use Netbeans Update Center to get rest of the Mobility plugins. In release 6.9 we are going to bundle Netbeans Mobility with Java ME SDK 3.0 and officially support Mac OS X as a platform for Java ME developers. If somebody would like to try Netbeans Mobility 6.9 for Mac OS X today then Development build (means not stable!) is available here:


    Note: There is a one major difference between Java ME SDK for Windows and Mac OS X - Mac version doesn't support Java ME CDC - only CLDC/MIDP. So if you'd like to write Java ME app for CDC you still have to use Windows.

    Wednesday Feb 24, 2010

    Microemulator Netbeans Mobility Support has been approved and published on Java.net

    + +

    Yesterday I received an email from Mobile & Embedded Community Governance Board that my project Microemulator Netbeans Mobility Support has been approved and published on Java.net. I'm moving all information about it from plugins.netbeans.org to java.net. New official home page of this project is: http://microemulatorplugin.dev.java.net. You can still download binary version of plugin from plugins.netbeans.org and search for "microemulator support" .

    Saturday Feb 06, 2010

    Amazon Kindle SDK (KDK) uses CDC Personal Basis Profile

    So it's true. Amazons KDK is Java ME CDC based with Personal Basis Profile. Java ME PB Profile provides a complete Java ME application environment for example it contains java.awt or java.rmi. Interesting that on KDK FAQ page I found information about support for all major Java IDE including Netbeans.

    Amazon Kindle KDK links:

    KDK Overview

    Developers FAQ

    If you'd like to apply to become KDK Beta tester click here.

    Thursday Jan 21, 2010

    Kindle Development Kit is Java ME CDC based?

    It looks like Amazon going to release SDK for Kindle and it should be available for Windows, Linux and Mac. As far I know Kindle has implementation of Java ME CDC so hopefully this Kindle Development Kit is Java based. If this information is true and SDK uses Java platform I should be able to write some kind of plugin/spport which allows to use KDK with Netbeans Mobility. According to this web page we can expect beta release next month.

    Wednesday Nov 18, 2009

    How NASA going to use Netbeans Platform

    It's not Java ME/JavaFX related subject but I just saw cool article on Javalobby about how NASA going to use Netbeans Platform. Link below:

    NASA Adopts the NetBeans Platform

    Thursday Oct 29, 2009

    Java ME SDK 3.0 Early Access for MAC OSX available

    If someone would like to try Java ME SDK 3.0 Early Access for MAC OSX now it is possible. It's available here:


    Don't forget to test Netbeans Mobility 6.7/6.8 with new Java ME SDK for MAC OSX and let me know if it works with Snow Leopard.


    Lukas posted article how to download and install Java ME SDK for MAC using Netbeans update center (6.8 beta).


    Thanks Lukas!

    Wednesday Jun 17, 2009

    Java ME SDK 3.0 and NB Mobility 6.7 running on Mac OS X

    Few days ago I had a chance to play with Java ME SDK 3.0 for Mac OSX. I have to admit it looks very promising. It supports all JSR's I need and Mobility 6.7 recognizes SDK 3.0 "out of the box". I've tried few applications and everything works smooth. Actually I had to slightly change one of the classes in SVG Rich Components Framework but part from that everything seems to be OK. I'm not 100% sure about current availability of SDK for MAC OS X but I'm afraid we have to wait some time for some public release.

    Additional JSR's available in tested version:

    • Advanced Multilmedia Supplements API 1.0
    • File Connection and PIM Optional Package 1.0
    • J2ME Web Services 1.0
    • Mobile Media 1.1
    • SVG API 1.0

    Screen shoot: Netbeans Mobility 6.7 + Java ME SDK 3.0 - SVG based application running on touch screen device

    Screen shoot: Netbeans Java ME Project Properties with Java ME SDK 3.0 platform

    Update: Netbeans Mobility is not officially supported on Mac OS X but it works pretty well on this OS :)

    Monday May 04, 2009

    Netbeans Mobility at JavaOne 2009

    JavaOne 2009 Registration

    If you are going to visit JavaOne this year and you'd like to learn more about NetBeans Mobility and meet the Mobility team we are hosting two hands-on labs and one technical session:

    Technical Session

    TS-5117 - Touch Our Application! Building a Rich Touch-Enabled SVG UI for Java™ Platform, Micro Edition

    Speaker: Karol Harezlak (Me)

    Hands-on Lab

    LAB-5502 - Your First Mobile Game

    Speakers: Andrew Korostelev, Ivan Sidorkin

    LAB-5539 - Touch Your Application! Building Slick, Touch-Enabled UIs for Java™ Platform, Micro Edition

    Speakers: Brad Schmidt, Lukas Hasik, Karol Harezlak (Me again)

    Don't forget to visit the Mobility team in the NetBeans booth!

    See you there!

    Sunday Jan 18, 2009

    Developer.com Product of the Year 2009 - Netbeans Mobility CDC

    For the third time in row (if I'm not mistaken) Netbeans Mobility won Developer.com Product of the Year 2009 !! This year Mobility for CDC is the best product in category Wireless/Mobile and Netbeans IDE won Java Tool category! I hope we'll also reach finals in Developer.com Product of the Year 2010 :)

    Link to the page with full list of winners: Developer.com Awards 2009

    Thursday Dec 04, 2008

    Overview of new features in NetBeans Mobility 6.5

    Netbeans 6.5 is available for more then two weeks so I think it's about time to summarize new Mobility Features in 6.5:

    • One of the most important feature in this version is SVG Rich Components which includes improved SVG Composer and Visual Designer Support for SVG Components. Using this feature developers can build SVG UI for mobile devices in very similar way to GUI builder and then import it to the Visual Midlet using SVGForm component.

      Tutorial which helps to start to use this technology:

      SVG based Personal Information Manager created with Netbeans Mobility

      and more information about this feature:

      SVG Rich Components in Netbeans Mobility 6.5

    • Support for BlueRay Development (CDC)
    • Visual Databinding. Make it is possible to bind UI (Form's Items) with datasources like Web Services, Web applications and so on.

      More info here:

      Visual Databinding in Netbeans Mobility 6.5

      and tutorial is on the way....
    • Custom Components API Project Support helps to create new Visual Designer components and add Java ME external libraries to the VMD environment.

      Few screenshots:

      New project Custom Components Support wizard.

      New Mobile Custom Component wizard.

      New Custom Components wizard.

      More information:

      Custom Components API Project Support

    Tuesday Oct 21, 2008

    NetBeans 10th Birthday Greetings on Netbeans.TV!

    If you'd like to see how some of the members of Netbeans team look like play video below. Mobility team is represented by Brad (baseball cap and sun glasses, acting funny :D ) and me (white t-shirt). Video is about 6 minutes long.
    <script type="text/javascript" src="http://www.netbeans.tv/js/swfobject.js"></script> <script type="text/javascript"> </script>

    Thursday Oct 16, 2008

    Visual Databinding in Netbeans Mobility 6.5

    We just have reached code freeze in Netbeans organization, it means no more P3's bug fixes for this release. I think it's a good time to present next new feature of Netbeans Mobility 6.5 which is Visual Databinding. You should be familiar with idea of data binding but just to refresh your memory... - idea behind this technology is to "bind" any kind of data source (Data Base, Web Service, etc ...) to the data receiver which is very often UI elements. Basically it helps to create program which (for example) can automatically update state of UI based on changes in data source or/and vice versa. The Visual Designer in version 6.5 has ability to bind MIDP UI components with data source of any kind, it can be Web Service like in the example listed below or something else like UI component. It's very flexible. Screen below shows places in Visual Designer where you can find tools to help you create application using data binding technology.

    Major part of this feature is Mobility Databinding library as well new set of custom components: DataSet and IndexableDataSet (components in the Moblity Palette marks with red square in the screen shot). Those components are providing layer of communication between source and data receiver (MIDP UI). Most of the parameters are editable using Visual Designer through new Property Editors and Screen Designer.

    Binding is very easy, using property editor user chooses one of the available DataSets and provides basic information like Expression Language query. You can find more information about this feature in the specification also there is tutorial coming up soon. Another thing is to implement logic in the source code of DataSet or IndexableDataSet component. Particular implementation depends of the type of data source. One of the DataSets components in the Visual Designer has logic already implemented, name of this component is ComponentsDataSet. This component provides easy to implement communication between MIDP UI widgets and database of contacts on mobile device. If you want to try Visual Databinding use latest build of Netbeans 6.5 (with Mobility included).

    Example below shows weather status based on the City and Country. Both examples utilize public Weather Web Service. In this application DataSet component suites as a layer between Web Service client and MIDP UI. Web Service Client has been created using Mobility End to End technology. Author of those two examples is Andrei Chistiakov. Below you can see screenshot of this application running on Nokia S40.

    Currently Visual Designer doesn't support Visual Databinding for SVG Rich Components but I'm showing this as a example of the Rich SVG Components in action. In future releases we also add support for Visual Databinding to the Rich SVG Components.


    Download Global Weather with MIDP UI and Visual Databinding

    Download Global Weather with Rich SVG Components (no databinding)

    Thursday Oct 09, 2008

    Upgrade for Netbeans Mobility Microemulator Plugin - Solaris, Mac OS, Linux

    + +

    Finally I've had some time to take care of Microemulator Plugin Support. Previous version of this plugin does not work with the Netbeans Mobilty 6.5 and I've promised to fix it as soon as 6.5 is in the stable state. Unfortunately I was not able to do it until now because I was busy with new features and bug fixing for new NB release. New version of Microemulator plugin is not very well tested (yet) so please report problems on the home page of plugin (listed on the end of this entry). Information about plugin and Microemaultor below.

    List of technologies implemented in the Microemualtor 2.0.2 and what is supported (or not supported) by Netbeans Microemultor plugin 1.0.1:

    • Works with all wersion of Netbeans 6.x
    • Operation Systems supported: Solaris, Mac OSX and Linux
    • CLDC 1.0/1.1 (JSR 30/139) - no reported issues
    • MIDP 2.0 (JSR 118) - large parts of CustomItem are not implemented
    • Bluetooth API (JSR 82)-1.0 - requires lib/microemu-jsr-82.jar, this is stub API definition used only during compilation process, for runtime integration with BlueCove (http://code.google.com/p/bluecove/) is needed (in this version of plugin bluetooth is supported only during compilation)
    • FileConnection API (JSR 75)-1.0 - requires lib/microemu-jsr-75.jar and additional command line parameter: --impl org.microemu.cldc.file.FileSystem (in this version of plugin bluetooth is supported only during compilation)
    • Mobile Media API (JSR 135)-1.1 - requires lib/microemu-jsr-135.jar, this JSR is only partially implemented
    • Wireless Messaging API (JSR 120)-1.0 - requires lib/microemu-jsr-120.jar, this is stub API definition used only during compilation process
    • Nokia UI API-1.0 - requires lib/microemu-nokiaui.jar
    • Siemens API-1.0 - requires lib/microemu-siemensapi.jar
    • Location API (JSR 179) - possible integration with OpenLAPI (http://thinktankmaths.com/technologies/openlapi/)


    NB Microemulator plugin home page + tutorial how to use it: http://plugins.netbeans.org/

    search keyword: Microemulator

    Microemulator home page: http://www.microemu.org/

    Tuesday Oct 07, 2008

    New Nokia S60 Touch Enabled Emulator

    Few days ago Nokia has released new version of Symbian S60 emulator. It has many improvements but what is really important touch screen support is one of it. We should see first device from Nokia based on this OS soon (Nokia 5800) but before it is aviliable on the market everyone can try it by installing S60 Platform SDKs for Symbian OS. This platform has implementation of Java ME and it was really interesting to see how Nokia deals with touch enabled MIDP components. I have to say I'm positively surprised. All MIDP components are "touch-enabled" and what is very important easy to use. Also I really like Look and Feel of these components. I've made a few test and it looks like all components are big enough to operate them using fingers so no need for stylus :). First screenshoot shows MIDP UI in Landscape mode. All changeable/editable elements of this UI can be operate using touch screen.


    Second screenshot shows same UI in "normal" mode.

    Application based on Canvas in landscape mode.

    One annoying thing about this platforms is strange keypad in applications which use Canvas. I understand that most of the current Java ME apps based on canvas does not support touch screen but on the other hand it is very ugly and breaks composition of the UI. I hope it is possible to switch this keypad off somehow if support for touch screen is available in particular application. If you'd like to try this new cool platform with Netbeans Mobility all you have to do is to add it to the list of Java Platforms in Netbeans using "Tools > Java Platforms > Java ME MIDP" then point folder with installed S60 Platform SDK and you ready to go.

    More information about new S60 Symbian platform


    Stuff about Java ME, NetBeans Mobility, mobile devices and more...

    Karol Harezlak is the Netbeans Visual Mobile Designer lead at Sun Microsystems


    « July 2016