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" .

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 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/

Thursday Oct 02, 2008

Playing with SVG Rich Components in Netbeans Mobility 6.5

This time I'd like to show new feature of Netbeans Mobility 6.5 - SVG Rich Components support. The SVG Rich Components simplifies process of creation of Java ME SVG user interfaces. First part of this support is the SVG Composer which is part of Netbeans Mobility 6.5. Using this tool users are able and drag and drop SVG Components from palette to the SVG image. It's similar to building Swing/AWT UI using Netbeans GUI Builder but instead of using Java Swing/AWT components developers using special SVG Components. Users can chose from predefined components available in the Palette in section "Form Components". Screenshot below shows SVG Composer with few SVG Rich Components already added to the form (SVG image).

If you are interested in details of this technology you can find more information on netbeans wiki page:

SVG Rich Components Support in Netbeans Mobility 6.5

If you want to try this feature on your NB 6.5 installation - create new Java ME project then create SVG image (File > New > Other > SVG Image) and don't forget to "Unlock" SVG Image every time you are starting editing image in the SVG Composer (Right click on SVG image then click "Unlock" action).

When SVG UI image is ready and saved, users can use it in the Visual Midlet applications. New custom component "SVG Form" in the Visual Mobile Designer acts as a container for SVG UI images (You can find it in "SVG Components" Palette section). Simplest way to add SVG UI image to the Visual Midlet is to drag and drop SVG UI image file on SVG Form component in the Flow view or Screen Designer (Screen view) of the Visual Mobile Designer. Jave source code and necessary components should be generated automatically right after SVG UI image is drooped on SVG Form component. Screenshot below shows Flow of the Jave ME application with SVG Components including SVG Form. You can download this application at the end of this entry.

It is also possible to look up SVG UI image preview in the Visual Midlet Screen Designer.

Finally two screen shots of SVG Rich Components application running on WTK 2.5.2 and Nokia S40.

WTK 2.5.2

Nokia S40

You can download sample application here:

SVG Rich Components Sample

but you need to use recent build of Netbeans Mobility 6.5 to run it. Recommended version of Netbeans is "Java" because it contains GlassFish which is necessary to run this example.

Download Dev build of Netbeans

Thursday Jul 24, 2008

Creating Java ME application for major Iphone competitor Samsung Instinct using Mobility

I was really glad to see tutorial how to use Netbeans Mobility and Sprint SDK to create applications for major Iphone competitor Samsung Instinct. I'm looking forward to write few apps for this platforms and test Sprint SDK with Netbeans Mobility. You can find more information here:

Netbeans Mobility + Sprint SDK tutorial:

Getting Started Guide for Using Sprint WTK and Netbeans for Creating Java Apps for Samsung Instinct

Lots of useful information:


Some screenshots:

Saturday Jun 07, 2008

Microemulator Support on Netbeans Plugin Portal

Recently I was able to fix and update Microemulator Support plugin for Netbeans Mobility. It has new home page on the Netbeans Plugin Portal. Microemulator Support plugin supports three operation systems: Solaris(OpenSolaris), Mac OS and Linux. Plugin's page also contains tutorial how to use it with Netbeans Mobility 6.1.

Netbeans Mobility Microemualtor Support

Monday Jun 02, 2008

NetBeans Mobility on Solaris

Some time ago Sun released OpenSolaris. It is simply the x86 version of Solaris 10 made open source. It is available as Live CD with very cool installer (Similar to Ubuntu Linux). The Netbeans Mobility Pack was unusable on this OS because of lack of the Java ME SDK for this platform. Major problem with JavaME/MIDP emulators for Solaris was missing preverifiers. Most of the them are native applications which comes with Java ME platforms for Windows or Linux like Wireless Toolkit or MPowerPlayer for Mac OS X and they are not available for Solaris. Fortunately since version 4.0 ProGuard comes with preverifier. The ProGuard is set of tools 100% written in Java so it also runs on Solaris. I was able to combined ProGuard and Microemualtor and now it is possible to write, run and debug MIDP application on my favorite OS. This feature is not yet part of the Mobility 6.5 but most likely will be in the final version of incoming relase. If you are using Solaris x86 or Mac OS X and you'd like to try this new feature you can download "preview" version of plugins from Netbeans wiki page:

Mobility Support for Solaris and Mac OSX

Microemulator is available here:

Microemulator project home page

Micoremulator, Mobility and OpenSolaris in action:

Monday May 12, 2008

Overview of the Visual Designer Components

In Netbeans Mobility 6 we have introduced new components like File Browser, SMS Composer or new SVG Components. They all well documented in the tutorials and documentation but I've noticed that MIDP related components don't have any overview or description in Mobility documentation (which could be a problem for less experienced Java ME developers). Thats why I've created simply overview of the Mobility Visual Designer components which is available here:

Mobility Components Overview

We also have few old (NetBeans Mobility 5.x) tutorials which are still valid for version 6. If you try to run examples from this tutorials please change Java ME platform from WTK 2.2 to WTK 2.5.2 and also screen shots show old version of Mobility but most important thing which is components API is unchanged.

Wait Screen Component Tutorial

Splash Screen Component Tutorial

Table Item Component Tutorial

Friday May 09, 2008

Mobility Components Project Support and Tutorial

Since version 6.0 of the Netbeans Mobility it is possible to add Custom Components to the Visual Designer. Unfortunately it requires some knowledge of the Visual Designer architecture and could be difficult at the beginning. It'd be simpler if Netbeans could create all necessary files for Mobility Components. Thats way we decided to introduce new feature in incoming release of Netbeans Mobility: Custom Component Project Support. It helps to create and "inject" Java ME components into the Netbeans Mobility Visual Designer. Developers will have possibility to create Mobility Components Project straight from one of the categories in the New Project Wizard. The Custom Component Project Support will help to generate skeleton of the new Mobility Component including Component Descriptors, Component Producers and add another Mobility Components using wizards. If you'd like to read more about this feature look at this document:

Custom Component Project Support Specification

Final version will be available in Netbeans Mobility 6.5 and also in Netbeans daily builds.

Custom Components Project Support screenshoot

Some of you probably don't want to wait until Mobility 6.5 and maybe have some cool ideas for Mobility Components right now, in this case look at the following tutorial:

Mobility Visual Designer - Custom Components Tutorial

It contains information how to create component for Visual Designer, describes architecture of Visual Designer Components and also has example of the Custom Component project.

Monday May 05, 2008

Netbeans Mobility 6.1 is out

Netbeans 6.1 is finally ready. In this release most important task for Mobility team was to improve NetBeans Mobility stability. We didn't implement any "breakthrough" features but there is one worth it to mention: MPowerPlayer SDK support for Mac OS X. Using NetBeans Mobility 6.1 it is possible to add MPowerPlayer SDK with "Add Java ME Platform" wizard same way as you can add WTK 2.5.2 or any other Java ME Platform to Netbeans Mobility (under Windows or Linux).

This is MpowerPlayer SDK running on Mac OS X:

and Mobility 6.1 Screen Designer in action:

Part from this feature I was also able to do small improvements all over Mobility Visual Designer. One of this improvements is direct access to the SVG Composer from Screen Designer while you working with SVG files. This feature is available in the Screen Designer pop up menu - "Edit SVG File".

You can download Netbeans Mobility from HERE .

Note: If you want to install Mobility on Mac OS X you have to download "OS independent ZIP" because NetBeans Mobility for Mac OS is still not (officially) supported.

Update: Unfortunately I just found out that I have small bug in MPowerPlayer SDK plugin. If you install MPowerPlayer make sure that SDK path dose not have spaces in the name, otherwise you may not be able to run MPowerPlayer emulator directly from NetBeans Mobility. I'll try to fix it in incoming NetBeans Patch for 6.1.


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

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


« July 2016