Tuesday, November 14, 2006

JavaME and Eclipse

There is a Eclipse project for JavaME called Device Software Development Platform Project, yesterday they announces Three Milestone Releases.

See:
Eclipse unifying enterprise SOA and mobile development
Eclipse Releases Platforms for Mobiles, Target Management, Java

I think a lot good stuff coming out from this Eclipse project!
But I am little worried about the possible fragmentation of the JavaME platform.
(it is great with eSWT but I prefer if it was a JCP standard)

I think we really need a new GUI toolkit for JavaME/CDC1.1 platform and soon new devices supporting eSWT will be released, so I will go for eSWT!
(I perhaps will change my mind when there are more devices on market that supports AGUI, but for the moment I only know about the SavaJe phone Jasper)

I hope Netbeans in the future will support eSWT, but I have no hope in the short term!

I also think it great when companies like Nokia and Motorala want to support developers, but please support booth the Netbeans and the Eclipse platforms.



Java ME Open Source Software List

I like this: Java ME Open Source Software List
It's great!

Saturday, November 11, 2006

Sun, please work for OpenSource the SW in the SaveJe phone!

What will happen with the SW in the Jasper phone?
Now when it looks like the company SavaJe is out of business.
I think this is really sad because the SavaJe phone (Jasper), AGUI (JSR-209) was planned to be implementation complete in Q406.

I have a message to Sun!
If that's the case, maybe there will be some effort from Sun to Open Source the SavaJe SW?
Please work for Open Source SavaJe SW!
(I understand it could be hard for SUN to do something in this situation, it is perhaps impossible)
In any case, Sun, “please make that happen!!”
I think a lot of developers would be happy about that!

A lot of people bought the SavaJe “Jasper”phone in JavaOne believing it is “the future”. It would be terrible if the device is discontinued with no chance to upgrade the SW”

We also really need more real devices that run JavaME/CDC1.1/PP1.1!
(I only know one device; it is this SavaJe phone Jasper)
We need it to have success for Java at PDA’s!

Tuesday, November 07, 2006

Don't forget linux Java developers

There is a on going discussion at Forum Nokia site about that Nokia should also support Linux developers.

It was suggested:
If Nokia does not have the resources to maintain a Linux tool-chain, Linux community will be happy to maintain it if Nokia can open up the source it for Linux community.

The answer was:
Actually Nokia has already done that, there is a Nokia-driven Java tools open source project in Eclipse called MTJ (Mobile tools for Java). As Eclipse run on Linux as well, MTJ could address your needs if there were enough contributers for the Linux side (like for SDKs and other tools that are needed).

I think what we really need are:
  • a Nokia SDK that support Linux, not only a Nokia Linux Eclipse IDE
  • the Nokia SDK should also works with different tools like Netbeans and Eclipse, not only with the Eclipse platform!
I also think It would be nice if there was a Nokia PC Suite version for Linux available

I also think it is a mistake to think "depending on a surveys, some 80-90% of developers are on Microsoft". I think this is only because of the bad support for the linux platform, if Nokia and Sun support the linux platform better this will change quickly. This move from the windows platform has already started with linux distributions like the Ubuntu distribution.

Friday, November 03, 2006

SavaJe - bye bye????

At last JavaOne I bought me the first SavaJe phone called Jasper(a Java-based mobile phone) and perhaps also the last SavaJe phone.

Have a look on this very disappointing news;
http://www.theregister.co.uk/2006/10/25/bye_bye_savaje/
http://www.newswireless.net/index.cfm/article/2977

SavaJe Java Developer Community Forums, Savaje - Out of Business or Not?:
http://java.savaje.com/bb/showthread.php?t=168

:-(

Thursday, November 02, 2006

Ubuntu is great on the client – It is a MS Vista killer

I have since some year ago running linux (fedora 4) on my server and it works great!
Now I thought it was time to also test running linux on a client computer.

I have test some different Linux distributions, Suse 10, fedora 6 and now also Ubuntu.
Ubuntu was the easiest to install and run, I downloaded Ubuntu 6.10 ­ the Edgy Eft ­ released in October 2006. It was only one CD (in fedora and Suse it was 5 CD) and burned it and install it.

One hour later my Ubuntu pc was up and running with lot of already included software like: open office, firefox 2.0, evolution mail, gaim
(yahoo & icq & MSN). I have also installed skype, jdk 5, Netbeans 5.5, Vmware player, Automatix, Opera (because of the rss-reader) and real player.

To get WEBBRADIO to work at SR, I had to to do this:
1) Install Real Player
2) Uninstall mozilla-­totem (using Synaptic Package Manager)
3) Open a terminal windows and do this:
ln ­sf /usr/lib/mozilla/plugins/nphelix.so ~/.mozilla/plugins/nphelix.so
ln ­sf /usr/lib/mozilla/plugins/nphelix.xpt ~/.mozilla/plugins/nphelix.xpt

About JDK 5, I found a package in AutoMatix and I install it from there.

About the Netbeans 5.5 installation, it works great the installation.
(I have had some trouble to install Enterprise pack and I have report it and I suppose Sun will fix it soon).
I had to update the file .bash_profile before the installation with this line:
export JAVA_HOME=/usr/lib/java-1.5.0-sun-1.5.0.08
After that run:
source .bash_profile
sudo ./netbeans-5_5-linux.bin
sudo ./netbeans-mobility-5_5-linux.bin
sudo ./netbeans_cdc-5_5-beta2-linux.bin
The only disappointment is the included SunWireless toolkit 2.2 for CLDC (why not version 2.5beta) in the Netbeans Mobility Pack for CLDC and for the Netbeans Mobility Pack for CDC there was no Sun Wireless toolkit for CDC included.
This could be ok, if it was possible to download it from Sun's Wireless Toolkit web site, but there is nothing more to download for the linux platform. This is really bad!!!

To sum it up:
Ubuntu works great, I will go on using it!
I have installed it on a old laptop with only 256 Mb RAM and 800 MHz CPU, but it is really fast!
One good thing with Ubuntu is that you also get critical updates all the time and this is free!!
No more MS Vista computer for me!
I hope Sun in the future will have better support for the linux platform for Sun Wireless toolkit for CLDC and CDC!!

Wednesday, October 25, 2006

The future of JavaME is also about new hardware

I think the future of JavaME is not only about new Java API’s.
We now have got a lot of new Java API and also updated JavaME profile’s (MIDP2.0 and PP1.1). But I think hardware that support it is missing (but not so much for the MIDP 2.0 profile).

I would like to buy new cool hardware that also support Java, but I don’t find it!

I bought me a SavaJe phone at last JavaOne, because it support Java ME/CDC1.1/PP1.1 and AGUI. The phone was an ordinary phone, nothing to be excited about.

I hope Next Generation UMPC (Origami devices) called 'Vistagami' tablets will support JavaME/JavaSE?
I wondering if there will be a next generation of Nokia’s Internet tablet (Nokia 770)? (Nokia 770 is running on the linux platform (not symbian)).
I also read rumours about a new device (a phone) from Apple called iPhone, look interesting.

I think there will come a killer PDA/tablePC during 2007 (like Apple’s Ipod), which company will sell it? (Apple, DELL, SUN, Nokia, SonyEricsson…). I don’t now but I think the market is there now.
I hope this new device will support Java, so I also can write new cool Java applications to this device!

Update:
I have been talking with Maximiliano Firtman in his blog about The future of JavaME.

I wrote this:
I am not sure if devices like Nokia 770 and UMPC (Microsoft's Ultra Mobile PC) will run well if they only have support for JavaSE. I think JavaME/CDC1.1/PP1.1 is perfect for these small devices. The next problem is which company can supply a JVM for these devices? The PocketPC platform is a good example how difficult it has been to find a JVM for that kind of device. Perhaps now when SUN Open Source JavaME it will help us to get jvm’s for more hardware platforms?

I agree that JavaME/CLDC/MIDP is already available on many consumer cell phones.
No hardware problem here, only Java fragmentation problem!
So I agree MSA for CLDC (JSR-248) is something really good for us developers!
I look forward when we have devices that support JSR-248 (MSA for CLDC) and JSR-249 (MSA for CDC). But again there are no devices that support it yet!
We will have devices soon that support JSR-248, but for JSR-249 it will takes some time I believe, I hope it will be a faster process to agree about this JSR-249!

But it is different for JavaME/CDC/PP, I think JavaME/CDC has not yet hit its mark with smartphones and PDAs.
For JavaME/CDC/PP there are nearly no devices you can buy, for example how many Nokia devices have support for JavaME/CDC1.0/PP1.0? , not many phones and for JavaME/CDC1.1/PP1.1 there is no phone.

I also think that the JavaME/CDC1.0/PP1.0 implementation has not been so well so far.
You can often find frustrated developer telling you things like this:
Why are CDC implementations always so buggy?

But I think there will be a change during 2007, with more devices supporting JavaME/CDC1.1. But it look like the next generation GUI on wireless handsets is not settled yet (AGU or eSWT)
Because of that I think we will have devices during 2007 supporting Java ME/CDC1.1/FP 1.1 profile with eSWT and other devices supporting Java ME/CDC1.1/Personal Profile 1.1 with AGUI (like the SavaJe phone) and Java fragmentation problem again for the JavaME/CDC platform

Friday, October 20, 2006

Something really good for me as a developer

It is not something new, but for me VMware is new.
I have since some month ago started to use VMware workstation (I was not so expensive to buy), there is also a free version called VMware player.

"VMware Player lets you evaluate new or pre-release software contained in virtual machines, without any installation or configuration hassles. You can also share existing virtual machines with colleagues or friends—just use VMware Player to run any virtual machine."

VMware has helped me lot as I often as developer/architect have to install new software, updates..
After a while my PC is completely over installed with different servers and became slower and slower.

The last months I have working with architecture for mobility at one my customers, this architecture also includes Mobility Management server and Security Servers. All these servers we need if we have a lot of users/devices out there.
So with VMware I am able to install a new server (linux or MS server 2003) on my laptop and have it well integrated with my developer environment (Netbeans/Carbide.j). It is really good not have to install all different servers direct on my laptop OS and to be able to test new version before you upgrade the real server.

Monday, October 16, 2006

90 % of SPAM Email have now disappear from my Email server

I maintain my own mail-server (posfix) on a linux server (fedora core 4).
I have come to hate spam and the waste of resources which comes with it.
I think about 80 % of all mail to me is spam.

But during this weekend I have reconfigure my postfix-server to get rid of all SPAM.
I found this really good article about Filtering spam with Postfix.
It was really easy to filtering spam with postfix; now 90 % of SPAM Email has now disappeared from my Email server.

I haven't yet integrated SpamAssassin or Dspam with postfix, after I have done that more SPAM will be removed.

But now it is possible again to using my Nokia phone to read mail!
:-)

Update:
There is also an Open Source product called Zimbra Collaboration Suite (ZCS), Open Source Edition that could be interesting (I haven’t tried it my self). The idea behind Zimbra is provide a do-all 'black box' that Just Works. All needed software is included. Read more about it here.

Read more:
Using PostFix To Reject Spam

How to install Postfix, Amavisd-new, SpamAssassin, Pyzor, Razor, DCC, and ClamAV on Fedora Core 4 - v2.1.8

How to get Dspam, Postfix, and Procmail to play well together

Dspam

Wiki, Integrating DSPAM with Postfix

Nine ways to combat spam

Tuesday, October 03, 2006

Now available: Sun Java Toolkit 1.0 for CDC, Beta

Now something I looking forward to next release of Netbeans, Netbeans 5,5 RC1

I have last week used 5.5 q-build 200609062200 of NB + q-build 20060907 of Mobility Pack for CLDC. It looks very nice for a mobility point of view!

What I have understood Netbeans CDC Beta2 should also be available together with 5.5 Release Candidate 1 on Tuesday October 3rd.

Now I have also found this information:
Sun have now released Sun Java Toolkit 1.0 for CDC!
Great news!

I am now prepared for Netbeans 5,5 RC1, Netbeans CLDC 5,5 RC1 and Netbeans CDC Beta2 when they release it today.
**************************
Sun is proud to announce the Sun Java Toolkit 1.0 for CDC, Beta has just been made available. With the toolkit comes the platform emulation environment that supports the Connected Device Configuration 1.1, Foundation Profile 1.1, Personal Basis Profile 1.1, and the recently completed Advanced Graphics User Interface 1.0. These technologies serve as the base for the CDC platform and support for developing applications on CDC are provided through the combination of NetBeans Mobility Pack for CDC and the Sun Java Toolkit for CDC. We are looking for feedback on the tool, so have a go and try it out.
Downloads and information can be retrieved at:Sun Java Toolkit 1.0 for CDC, Betahttp://java.sun.com/products/cdctoolkit/overview.html
NetBeans Mobility Pack for CDC Previewhttp://www.netbeans.org/kb/50/mobilitycdc.html
Thanks,Sun Java Toolkit for CDC Product Team

Monday, October 02, 2006

Running Glassfish and Apache httpd on fedora Core 4 server

I have installed GlassFish V1 Milestone 7 - build 48 on a fedora Core 4 server.
I have also installed: JDK5.0 and Ant 1.6.2
I also have to add JAVA_HOME to point to JDK5.0

I would like to integrate Apache httpd (2.0.54) with Glassfish, I found this excellent blog about this.

But I get this error in "mod_jk.log":
[Sun Oct 01 13:29:21 2006] [5737:22208] [error] init_jk::mod_jk.c (2450): Initializing shm:/etc/httpd/logs/jk-runtime-status errno=13

But the Glassfish server works ok, it is the integration that don’t works completely ok.

Do you now what is wrong?

I have done this:
1) I downloaded this file “mod_jk-apache-2.0.49-linux-i686.so”, I copy the file to: /etc/httpd/modules

2) I created this file: /etc/httpd/conf.d/glassfish.conf, that look like this:
LoadModule jk_module modules/mod_jk-apache-2.0.49-linux-i686.so
JkWorkersFile /etc/httpd/conf/worker.properties
# Where to put jk logs
JkLogFile /var/log/httpd/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel debug
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
# Send all jsp requests to GlassFish
JkMount /*.jsp worker1
# Send all glassfish-test requests to GlassFish
JkMount /glassfish-test/* worker1

3) Then I created this file:
/etc/httpd/conf/worker.properties, that look like this:
worker.list=worker1
# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost.localdomain
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

4) I have also copy to /usr/glassfish/lib:
- tomcat-ajp.jar
- modeler-1.1.jar
- commons-logging-1.0.4.jar

5) Then I enable mod_jk by adding one line in this file: /usr/glassfish/domains/domains1/config/domain.xml for the tag "jvm-options":
-Dcom.sun.enterprise.web.connector.enableJK=8009

6) I then restarted the Apache httpd (Apache/2.0.54)

7) After that I start the GlassFish server, with this:
asadmin start-domain domain1

8) I downloaded hello.war, from here and copy the file to:
/usr/glassfish/domains/domain1/autodeploy

9) The deployment didn’t work so I did this:
cd /usr/glassfish/domains/domain1/autodeploy
asadmin
asadmin>deploy hello.war
Now the deployment works ok!

10) Test the server
Locally on the server:
http://localhost:8080/hello = works ok!
From Internet:
http://www.ojn.se/hello = works not!
http://www.ojn.se:8080/hello = works ok!

Tuesday, September 26, 2006

Ove Nordström is now a JCP Member

At last JavaOne 2006 Sun promoted everyone to join Java Community Process (JCP).
I have thought about it for a long time and now I have decided to join JCP. I am now a JCP member: http://www.jcp.org/en/participation/members/N

Friday, September 22, 2006

Thursday, September 21, 2006

AGUI(JSR-209) is finished, but don’t believe AGUI will have any success!!

Success for me means I can buy devices supporting AGUI and if look on the comments down you understand what I mean.
:-(

AGUI (JSR-000209 - Advanced Graphics and User Interface Optional Package for the J2METM Platform) have passed the Final Approval Ballot

View the ballot results here:
http://jcp.org/en/jsr/results?id=3982

Have a look these comments:
On 2006-09-18 Nokia Corporation voted Abstain with the following comment:
Nokia votes Abstain because we think the current specification does not take into account requirements of the mobile devices and is not suitable for them.
Firstly, the specification does not address use and integration with native UI toolkits well enough. Most mobile devices have a native UI toolkit used by native runtime and other runtimes and consistency between applications of different runtimes within the same device is essential.
Secondly, in its current form, the specification does not provide interoperability for look and feel modules to work across different independent implementations of the specification. The specification does not define many details accurately enough and a look and feel module needs to make assumptions that are valid possibly only on one particular implementation.
Thirdly, the specification does not adequately take into account mobile specific features and restrictions.
Even if these issues have been brought up in the EG several times the specification lead has chosen not to sufficiently address these. Therefore, in our opinion, this specification is not on a large scale suitable for mobile devices, such as mobile terminals.
------------------------------------------------------------------------------
On 2006-09-18 Ericsson AB voted Abstain with the following comment:
Ericsson would like to support any JSR going forward that also aim to bring innovation to JAva ME and the JCP. From an EC point of view there is also a need to maintain a viable/predictable evolution path for Java ME at large and currently a number of competing UI related JSRs, while still providing innovation and flexibility it may also prove to fragment the market. Ericsson would like to ask stakeholder of these JSRs to consider e.g. how JSR-209 fits in the big picture together with JSR-271, JSR-258, JSR-287 and JSR-290 etc. (to name a few examples). It should also be noted that JSR-209 may not be suitable for the "limited" part of the Java ME devices e.g. those having a native UI toolkit for speed and power effeciency etc.

Thursday, September 07, 2006

JSR 232: Mobile Operational Management - Final Ballot Approved!!

Oh Yes JSR 232 is final!
I have waiting fore that a long time!
Read more about JSR-232 here.
Now I am waiting for that tool and devices supporting JSR-232!
:-)

Tuesday, September 05, 2006

Back to Karate again

Since two weeks ago I have started to practice karate again (after 10 years break).
I have change to a karate club close to where I live called Salem Shukokai Karate, the style is called shukokai. I started to practice karate at Kusano-Ha Shitoryu, the style there is called Kusano-Ha Shitoryu Kenpo Karate-Do Kai.
It is fun to be back in the Karate business again!!

Debugging on the SavaJe phone with Netbeans 5.5 beta 2 Mobility Pack for CDC works now

I followed the steps in http://java.savaje.com/wiki/index.php/Using_JDWP_to_debug_bundles
I was using Netbeans 5.5 beta 2 Mobility Pack for CDC.
On the phone I had installed the Early Access Update 2 for the JavaOne Jasper Edition

But I was not able to debug on the phone. I got:
Attaching to 192.168.254.2:9462
Connection refused.
I was not able to ping the phone from my PC:
ping 192.168.254.1

I have installed my Xlet on the phone by placing the bundle files on the SD card under a folder entitled /savaJe/bundles/.
Then it is not possible to start the application when the USB cable is connected. HowTo do that?

I got an answer from SavaJe:
I'm assuming that you are mounting the SD card to the PC via the USB mass storage driver. The SD card can only be seen by one device at a time (either the phone or the PC).

After you've copied the bundle files to the SD card, right click the drive letter of the SD card on the PC, and select Eject. The phone should remount the SD card, and the Xlet should show up in the My Applications
group. To dismount from the phone (and remount to the PC), pop the SD card out and then reinsert it. Any Xlets on the SD card should disappear from My Applications, and the SD drive should reappear on the PC.

If you're using an SD adapter that plugs into the PC, you don't need to worry about this (but you have to do a lot more SD card swapping)

Now it works to debugging on the SavaJe phone using Netbeans 5.5 beta 2 Mobility pack for CDC!!

:-)

Choose a tool for Java ME?

Often I get questions about Java ME tools like these:
- What's your personal favorite Java ME tool and why?
- Netbeans or Eclipse?

I work as a Java consultant and I have to use both tools at different customer.
The customer has often already selected what tools the project should use.

I think; because both Eclipse and Netbeans are free, try both!!
Eclipse and Netbeans have very friendly installations, no MS registstry changes, everything in one folder; because of that it is very easy to remove both eclipse and Netbeans.

My favorite tool is Netbeans!!!
What like with Netbeans is good/fast support for new things (like Java ME/CDC1.1) and the Netbeans community (if you have a question always someone answer).

If you would like to try Netbeans Mobility Pack for CLDC and NetBeans Mobility 5.5 Pack for CDC, install the following software on your computer:
- JDK 5.0
- NetBeans IDE 5.5 Beta 2
- NetBeans Mobility 5.5 Pack for CDC Preview version
- Sun Java Toolkit 1.0 for CDC, Early Access
Now you have support for Java ME/CDC1.1/PP1.1 and AGUI(JSR-209=Swing)
Also install:
- NetBeans Mobility Pack 5.5 beta 2
- Sun Java Wireless Toolkit 2.5 for CLDC, Beta
- Carbide.j 1.5 (add Nokia SDK:s)
Now you have support for Java ME/CLDC1.1/MIDP2.0

In the menu "tools" "Java platform Manager" you integrate different SDK’s, like these included with Carbide.j 1.5, Sun Java Wireless Toolkit 2.5 for CLDC and Sun Java Toolkit 1.0 for CDC, Early Access