# Einstieg in J2ME (Java2 MicroEdition)



## Stefan1200 (3. Nov 2003)

Die Erweiterung des normalen SDKs für die Programmierung in der MicroEdition hat den Namen "Wireless ToolKit", im nachfolgenden WTK genannt.

Es gibt einen wichtigen Punkt, den man beim Programmieren für Handys usw. beachten muss.
Soll das programmierte Programm hinterher auf allen Handys laufen, und nicht nur auf Handys einer bestimmten Marke, sollte man lieber nur das WTK von Sun benutzen. Die Auswirkungen sind dann allerdings, das man auf Handy spezifische Dinge wie Soundausgabe und Vibriereffekte nicht zugreifen kann (ich kenne jetzt nur das WTK 1.0.4).

Wenn man nur für eine bestimmte Marke programmieren möchte, dann sollte man sich lieber das WTK der Handy Hersteller runterladen.

Grundvoraussetzung ist immer ein Installiertes SDK der großen Java SDK Brüder.
Von Sun bekommt man das WTK von dieser Seite:
Sun Java Wireless Toolkit for CLDC (formerly known as Java 2 Platform, Micro Edition (J2ME) Wireless Toolkit)
Ohne Anmeldung kann allerdings nur das WTK in der Version 1.0.4_01 herunter geladen werden.
Reicht für die Anfänge vollständig aus.
Downloadlink für die 1.0.4_01 für Windows:
http://javashoplm.sun.com/ECom/docs...0.4_01-win-JPR&SiteId=JSC&TransactionId=noreg

Das WTK von Siemens bekommt man unter dieser Adresse:
http://www.siemens-mobile.com/developer
Hier wird aber eine kostenlose Anmeldung benötigt.

Wer ohne Anmeldung sich in die Grundprogrammierung der MicroEdition hinein fuchsen möchte, dem reicht das WTK von Sun in der Version 1.0.4_01 vollkommen. Es gibt zwar bereits bei Sun die Version 2.0 des WTKs, allerdings wird diese Version bisher von den (meisten) Mobiltelefonen noch nicht unterstützt.
Sun liefert eine bequeme Toolbar mit, die abgesehen vom Sourcecode alles von alleine macht.
Ebenfalls ist ein Emulator für Graustuffen und Farbhandys dabei, direkt aufrufbar von der Toolbar aus. Auch sehr interessante Codebeispiele und API Dokumentation liefert Sun dem WTK mit. Es muss also wirklich nur das eine WTK Archiv gesaugt werden.

Als IDE kann jeder benutzt werden, bei dem es möglich ist, das Klassenarchiv hinzuzufügen.
So das neben der src.zip des normalen SDKs noch die ZIP Datei aus dem WTK Lib Ordner hinzugefügt werden muss.

PS: Ich empfehle euch mit der Toolbar vom WTK zu arbeiten. Ihr braucht den IDE nur, um den Source Code in den von der Toolbar vorgegebenen src Ordner zu legen, das compilieren übernimmt die WTK Toolbar für euch.

Ganz wichtig, was mich fast zum Wahnsinn getrieben hat: MicroEdition Programme werden etwas anders erstellt, als normale Java Programme. Es läuft in folgenden Schritten ab:
1. Sourcecode erstellen (IDE)
2. Compilieren (javac.exe) - Übernimmt die WTK Toolbar für euch
3. Preverify, sonst gibt es Fehlermeldungen beim Ausführen (preverify.exe)
    - Übernimmt die WTK Toolbar für euch
4. Jar Archiv mit vorgegebener Manifest erstellen - Übernimmt die WTK Toolbar für euch

Vielleicht hilft euch dieser Artikel ja in den Anfängen weiter. Bei weiteren Fragen einfach an mich / dieses Forum wenden.


----------



## magneto (13. Feb 2004)

Hi Stefan,

habe soeben zu ausprobieren mal das WTK von sun runtergeladen und weiss nicht weiter.
Habe es installiert und würde es gerne mit Eclipse zusammen benutzen.
Könntest du mir ein paar weiter Tips geben, wie ich am besten anfange,
denn ich blicks nicht.

Thx und Gruß
ivan


----------



## Stefan1200 (13. Feb 2004)

Bezüglich Eclipse bin ich leider überfragt. Aber du kannst ja mal suchen, wo du in Eclipse weitere Klassenarchive hinzufügen kannst. Was du da hinzufügen musst, steht ja in meinem Text.


----------



## magneto (13. Feb 2004)

Hi Stefan, 

vergessen wir Eclipde. Kannst du mir an eiem einfachen Beispiel sagen
wie ich zu einem klienen J2ME Programm komme.
DAs z.B nur Hello Handy ausgibt und wie ich dieses dann testen kann
bzw ausführen.
thx
ivan


----------



## dermatthes (7. Apr 2004)

Hallo,

ich hab Eclipse mit EclipsME Plugin laufen (such mal bei Sourceforge danach).

Wichtig: Du musst die 3.0.x Version von Eclipse nehmen - sonst läuft es nicht.

EclipseME läuft wirklich super (außer kleineren Fehlern).

Grüße,
  Matthias


----------



## stev.glasow (22. Jun 2004)

Und wenn dann mit der Installation alles klar ist, gibt es hier ein ganz gutes MIDP-Einsteiger-Tutorial: http://www.developer.com/java/j2me/article.php/10934_1561591_1


----------



## ByteRider (20. Jul 2005)

Hallo,

also wird WTK 22 noch nicht von allen Handys unterstützt ??
Damit man voll kompatibel bleibt, sollte man also WTK 1.04 verwenden...

Ist es dabei eigentlich egal, welche SDK man installiert hat ?
Ich frage, weil seit ich die WTK22 mit dem SDK 1.4.2_03 installiert habe, bekomme ich
keine Midlets mehr ans laufen ! Auch nicht mehr mit der WTK 1.04 ??

Gruß

Byte


----------



## stev.glasow (20. Jul 2005)

> also wird WTK 22 noch nicht von allen Handys unterstützt ??
> Damit man voll kompatibel bleibt, sollte man also WTK 1.04 verwenden...


Hängt halt davon ab was du brauchst, beim 2.2er sind doch einige Sachen hinzugekommen. Einige Leute entwickeln auch nur für eine Handymarke oder für jede Marke extra um z.B. die Vibrationfunktion der Nokia API zu nutzen. Musst halt gucken was du willst und was das jeweilige WTK kann - um dann zu vergleichen und zu gucken ob und wie weit du die lieber Kompatibilität oder Funktionalität einbüßen möchtest.

Es gibt aber auch ein Framework mit dem man die Funktionalität vom WTK 2 im WTK 1 nutzen kann, ist aber so weit ich weißt nicht kostenlos und hab's auch noch nie ausprobiert . Wenn Interesse besteht such ich's dir aber raus.



> Ist es dabei eigentlich egal, welche SDK man installiert hat ?
> Ich frage, weil seit ich die WTK22 mit dem SDK 1.4.2_03 installiert habe, bekomme ich
> keine Midlets mehr ans laufen ! Auch nicht mehr mit der WTK 1.04 ??



Ich glaube das sollte egal sein, habe aber ein ähnliches Problem:
Nachdem ich das WTK 2.2 für(mit) dem 1.5er JDK installiert hatte ging auch nichts (Meldung hab ich grad nicht parat). 
Mit der 1.4.2er gings dann aber.
Hab jetzt einfach 2 JDKs drauf das 1.4.2er für das WTK und das 1.5er für den Rest.

P.S. Und verlass dich nie auf den Immulator, ruhig das Programm mal auf einigen Handys testen, die Implementierungen sind teilweise doch etwas unterschiedlich (auch von Handymarke zu Handymarke).
[edit]
ähm Emulator nicht Immulator


----------



## MPW (27. Jul 2005)

Stefan1200 hat gesagt.:
			
		

> Ohne Anmeldung kann allerdings nur das WTK in der Version 1.0.4_01 herunter geladen werden.



Also ich sauge mir gerade das 2.3-Beta. Entweder ist deine Info überholt oder es liegt am Beta-Status - aber sun und beta sollte kein Problem darstellen. Naja bin ganz bespannt - mein erster Einstieg in MIdletts. Tolle Einleitung^^!! :applaus:


----------



## MPW (12. Nov 2005)

Hallo,

ich wollte mal vorsichtig Fragen - und hoffe es nicht überlesen zu haben - wo genau krieg' ich die Nokia API her?

Hab' mal gegoogelt, auf Nokia.de gesucht etc., nix gefunden, die blöde Searchengine schickt einem einen Haufen Suchergebnisse mit 100% Relevance, die aber das Wort, bzw. Buchstabenkombination API nichtmals enthalten, sowas find' ich immer besonders tol;-)

Daher:

Könnte bitte jemannd mal den genauen Downloadlink posten?

 - Danke!


----------



## Nick H. (12. Nov 2005)

das is in den Entwicklungsumgebungen von denen mit drin
musst dir einfach eins runterladen


----------



## lin (13. Nov 2005)

guck mal hier
http://www.forum.nokia.com/main/1,,0333,00.html


----------



## solarwasser (21. Okt 2006)

Hmm die Anleitung ist ja recht Windows spezifisch was ist wenn man uner MacOSX Programme für Mobiltelefone schreiben möchte?
Für den Mac ist es nicht ganz so leicht an ein Wireless toolkit zu kommen, oder?


----------



## ven000m (4. Mai 2007)

Hallo,


Hier das HelloWorld Handy:


```
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
import java.util.Date;


public class FirstStep extends MIDlet {

	public FirstStep() 
	{
		super();
	}

	protected void destroyApp(boolean arg0) throws MIDletStateChangeException 
	{
		

	}

	protected void pauseApp() 
	{
	

	}

	protected void startApp() throws MIDletStateChangeException 
	{
		
	
		String helloworld="HelloWorld!";
		
		
		Form form = new Form(helloworld);
				
		

		Display display = Display.getDisplay(this);	
		
		
		display.setCurrent(form);	                   
				
			
		
		notifyDestroyed();
	    

	}

}
```

Gemacht habe ich das in Eclipse direkt, mit J2ME und dem WTK. Beides anhand der Anleitung unseres Prof.'s eingebunden, hat ca. 20min gedauert.


----------



## skopus (25. Nov 2007)

Hi,
währe jemand bereit hiervon ein Update zu machen? Bin stark am Entwickeln von Handytools interessiert, brauche da aber eine Einführung. Habe mir zwar jetzt das J2ME und auch Eclipse das EclipseME gezogen, aber irgendwie läuft das nicht so wie es soll.
Ich befürchte ein wenig, dass evtl die Versionen (habe von allem das neuste) nicht so richtig kooperieren.(?)

Also, ich vordere es nicht, würde es aber mit begeistertem Interesse verfolgen, wenn hier jemand das ganze ein wenig auf den neusten Stand bringt 

Gruß
Skopus


----------



## Nixon (28. Jan 2008)

hallo,

diese SDK hab ich mir nach langem hin und her (mit dem direkten zeug von symbian; weil ichs N95 hab) auch installiert.
Zudem hab ich Eclipse (das ganz normale standard)..jetzt hab ich das Hallo Welt Tut. gemacht (das "Standalone", nich das aufer konsole) und wollte es mit dem WTK abspieln, testen nur der will ne ".jad" datei von mir....

und ich als kompletter Profi, weiß nich wirklich wie ich die bekomm, ich war ja schon geschockt als ich im Projektverzeichnis nicht ma ne Form oder so gefunden hab  (bin das aus VFP, was ich inner Ausbilung lern, so gewohnt)...

Kann mir da einer weiterhelfen? wie ich mein erstes handyprogg/förmchen zum testen bekomm ?...isses die falsche Eclipse-Version?

danke...

Nixon


----------



## The_S (29. Jan 2008)

Haste das Eclipse-ME Plugin installiert?

Kann das mal ein admin/mod in einen seperaten thread absplitten? Danke!


----------



## Nixon (29. Jan 2008)

Eclipse IDE for Java Developers 

den download hab ich auf der eclipse seite gestartet, also des "basic" hab ich...fehlt mir da was elementares oder wie ?


----------



## The_S (29. Jan 2008)

ja, vermutlich das hier http://www.eclipseme.org/ (das ME-Plugin, wie gesagt)


----------



## Backwardsman (29. Jan 2008)

Nixon hat gesagt.:
			
		

> und ich als kompletter Profi, weiß nich wirklich wie ich die bekomm, ich war ja schon geschockt als ich im Projektverzeichnis nicht ma ne Form oder so gefunden hab  (bin das aus VFP, was ich inner Ausbilung lern, so gewohnt)...


FVP?? Verband Freier Psychotherapeuten, oder was? :-D ... würde mich jetzt mal interessieren, was das sein soll und was du mit "Form" meinst??

... ansonsten, wie schon erwähnt, ME-plugin installieren... auf der projekt-seite von dem plugin ist alles sehr ausfürhlich beschrieben!


----------



## Nixon (29. Jan 2008)

looool FVP...heißts 1. nicht, es heißt VFP...Visual FoxPro von MS (is speziell für Datenbanken/Tabellen Applikationen etc. gedacht Objektorientert halt)

und mir Forms mein ich Forms xD...ne oberfläche halt, also bei VFP^^ liegen dann die einzelnen Forms einer App in dem gespeicherten Ordnern...

weißte was ich mein  ?


----------



## Greecse (25. Feb 2008)

Kann ich Java Micro Edition auch lernen wenn ich so gut wie keine  Java Kenntnisse habe?

Und wenn ja würde dann  für den Anfang  zum Beispiel so etwas reichen:http://www.amazon.de/Java-goes-Handy-Herbert-Burbiel/dp/3772375472


----------



## Gast (1. Jun 2008)

Hallo,ich gehe auf ein osz für Informationstechnik und habe seit diesem Jahr java in der Schule(bzw im informatik untericht),so viel zu meiner einleitung^^! 
Ich habe mir vor kurzem einen xda comet von 02 geholt und wollte halt probieren java-programme mit ihm unterwegs zuschreiben ,so jetzt hab ich ein paar sachen noch nicht wirklich verstanden 
Java Me - ist doch keine laufzeitumgebung oder ,kann man überhaupt programme mit windows mobile 6 schreiben ??? Dazu bräuchte ich ja eine laufzeitumgebung(compiler etc),einen editor.
sorry fals so eine ähnlich frage schonmal gestellt wurde ,ich wurde nicht so richtig bei FAC's fündig und bei google komme ich auch nicht weiter (wusste auch nicht genau wo ich im Forum hinposten soll , würde mich sehr freuen wenn ihr mir helfen könnt,oder sagt wo ich in diesem Forum erneut hinposten soll oder eventuell linkt schickt =)

Hannes


----------



## Gast (1. Jun 2008)

sorry mien Name ist Hannes^^
Thx schon im Vorraus


----------



## The_S (2. Jun 2008)

Wenn du für Window Mobile 6 einen entsprechenden J2ME Compiler findest, dann kannst du damit Programme schreiben.

Versteh aber den Sinn der Frage nicht so ganz, und warum du da nicht nen extra Thread aufgemacht hast ???:L .


----------



## Gast (2. Jun 2008)

ok danke schon mal,am besten ich mal mal nen neuen Thread auf ^^


----------



## Spacerat (31. Aug 2008)

Hallo zusammen...

Habe kürzlich zu Testzwecken das WTK2.2 von Sun heruntergeladen und versucht zu installieren. Prompt meldet mein Virenscanner (Avira AntiVir PE) mehrere Dateien als Virus bzw. als Datei mit Erkennungsmusten des gefährlichen Backdoorviruses BDS/Backdoor.Gen.
Kann das möglicherweise mal jemand nachvollziehen? Es ist doch recht unwahrscheinlich, das Sun Software mit derartigen Mustern verbreitet.

cu Spacerat


----------



## MiDniGG (1. Sep 2008)

War schon vor kurzem hier irgendwo gestanden. Es ist halt nem Virus ziemlich ähnlich. Aber was ich mitbekommen habe passiert das nur beim AntiVir. Es soll anscheinend in den nächsten Updates mal rausgenommen werden. Frag mich aber nicht wie lange das noch dauert. 

Kannst ja mal den "Virus" an Avira schicken. Je mehr sich beschweren umso schneller geht es........Hoff ich ^^

Edit: Außerdem haben Emulatoren gern Virusähnliche Signaturen. Wenn de ma nach nem bspw. GameBoy emulator schaust oder so sehen das die virenprogs auch nich so gern...


----------



## Spacerat (1. Sep 2008)

MiDniGG hat gesagt.:
			
		

> Kannst ja mal den "Virus" an Avira schicken.


Das ist bereits geschehen... sowohl für Version 2.2 als auch für Version 2.5.2. Ich habe auch schon bei Avira nachgefragt, wie man den Scanner dazu bringt die betroffenen Dateien explizit zu ignorieren, da es sich ja wohl kaum um besagten, böswilligen Virus handelt. Von denen kommt allerdings immer nur als Antwort, das man aufgrund von hohem Mail-Aufkommen keine persönliche Antwort erwarten soll. Ist wohl auch nicht weiter verwunderlich... keine gekaufte Lizenz, kein support.

mfg
Spacerat


----------



## The_S (2. Sep 2008)

Naja, bleiben Alternativen wie comodo, avast oder avg  .


----------



## Guest (9. Nov 2008)

hallo,

also ich bin aus diesem thread noch nicht recht schlau geworden, wie ich eine funktioniernde Umgebung schaffe, um z.B. mein Nokia 6230i mal testweise zu programmieren.

Ich hab das Eclipse SDK 3.4.1 drauf.

Dann brauch ich wohl das WTK, um mein simples Programm auch auf andere Handys laufen lassen zu können. 

Das ist auch eins meiner Ziele. Ich werde "nur" einfache Programme schreiben und von speziellen Handymarkenabhängigen features Abstand halten.

Aber wie "verbinde" ich nun das WTK mit dem Eclipse??

Die ist ein verzweifelter Hilferuf 

Alois


----------



## The_S (10. Nov 2008)

WTK muss in der PATH-Variable stehen und dann holste dir noch eclipseme


----------



## jojojo (5. Jun 2009)

Hi ich habe EclipseME und das läuft auch soweit ganz gut nur ist das Problem, dass das Debuggen wohl anscheinend nicht läuft? Also der Emu pausiert aber Eclipse hält nciht am Breakpoint. Doofe Sache zumal man ja nicht mal Bluetooth per WTK emulieren kann. Kennt da einer bessere freie Alternativen außer Netbeans(kriegt mein PC nicht geblasen).


----------



## nocturne (6. Okt 2010)

Ihr freut euch alle. Ich krichs nicht gebacken. Ich hab von Aldi den GT350 gekauft.
Jetzt will ich ein Midlet-Projekt unter Eclipse erstellen, kann aber keine Geräte hinzufügen(devices). 
Ich habe in 5 Stunden die Festplatten durchsuchen lassen und keine Devices gefunden.

"There is no device available.", Wenn ich auf Manage-Devices klicke kommt eine leere Liste mit SDK's.


----------



## ARadauer (6. Okt 2010)

SDK installiert?


----------



## nocturne (6. Okt 2010)

Ja klar, und weil er nix gefunden hat habe ich das WTK paralell installiert.

Ich habe eben eclipse neu gestartet. Jetzt findet er die Devices!     :|


----------



## Atze (12. Okt 2010)

Stefan1200 hat gesagt.:


> PS: Ich empfehle euch mit der Toolbar vom WTK zu arbeiten. Ihr braucht den IDE nur, um den Source Code in den von der Toolbar vorgegebenen src Ordner zu legen, das compilieren übernimmt die WTK Toolbar für euch.



klang ja alles ganz easy, wollte ich mir auch mal anschauen, aber bekomme sourcen und diese sch... toolbar nicht verheiratet!  hab n bischen rumgespielt, aber ich hab leider nicht rausgefunden, wo ich diesem blöden wtk mitteile, welche sourcen er kompilieren soll!!! :/ nen pfad angeben geht nich, in den ordner wtkxxx/apps/ legen bring auch nix! :/ bin nicht in der lage n billiges example zum laufen zu bringen. wo müssen denn die sourcen hin?


----------



## Atze (13. Okt 2010)

was los, zu trivial die frage???? oder weiß das wirklich niemand?


----------



## The_S (13. Okt 2010)

Warum willst du die Toolbar zum Kompilieren, wenns auch einfach die IDE machen kann, in der du den Sourcecode auch schreibst ?


----------



## Atze (13. Okt 2010)

mit nem eclipse plugin?
ja, ginge wohl auch, wollts nur erstmal über den empfohlenen weg testen. und so schwer kann das ja nicht sein!  außerdem ist da ja auch n emulator dabei. hört sich auch in der doku alles simpel an, nur wo die sourcen hin sollen wird halt nich gesagt. :/


----------



## The_S (13. Okt 2010)

Also ich empfehle dir einen anderen Weg zu wählen - ist doch Schwachsinn zwei Tools für eine Aufgabe zu nehmen, was auch problemlos mit einem Tool erledigt werden kann  .


----------



## Atze (13. Okt 2010)

jo, komme da wohl so nich weiter! ist ja auch nur zum spaß, hab ja eigentlich nix mit ME am hut. werds mal mit dem eclipse plugin probieren. danke


----------



## Atze (13. Okt 2010)

so, mit dem plugin klappts nu.
hatte mit eclipse galileo (xubuntu softwareinstallation) zwar probs, mit unter helios gehts. nur in der konsole bekomm ich beim starten ne meldung "/dev/dsp: Device or resource busy"

läuft aber trotzdem. kann da einer was zu sagen?


----------



## Rimrul (19. Jan 2011)

Enthällt das Eclipse-ME-Plugin schon WTK?


----------



## Rimrul (19. Jan 2011)

Habe die antwort gefunden. frage hat sich erledigt.


The_S hat gesagt.:


> WTK muss in der PATH-Variable stehen und dann holste dir noch eclipseme


----------



## JeanZ (29. Jan 2011)

Ich habe Netbeans 6.9.1 und denke mal daß ich die kleinste Version geladen habe (wie kann ich das erkennen?)

Ich finde keine Stelle bei netbeans.org wo ich etwas zur Entwicklung und Emulation von JME nachladen kann.

Kann mir da jemand helfen?


----------



## L-ectron-X (29. Jan 2011)

Klicke auf Extras -> Plugin
und wähle in dem Fenster die fehlenden Komponenten aus.


----------



## JeanZ (30. Jan 2011)

Danke, das hat funktioniert.

Wenn ich jetzt ein ME Projekt einrichten will kommt die Fehlermeldung:

"No J2ME compatible Plattform is installed in the IDE. ..."

Und es gibt die Schaltfläche 'Install SDK/Plattform/Emulator...'

Wenn ich die drücke bekomme ich einen Dialog mit offenbar J2SE Plattformen und einer Schaltfläche 'Plattform hinzufügen...'

Wenn ich letztere drücke, kann ich u. a. 'Java ME MIDP Platform Emulator' auswählen und bekomme dann eine Dateiasuwahl auf meine lokalen Datenträger angeboten.

Was fehlt mir noch?


----------



## The_S (31. Jan 2011)

Das WTK!?


----------



## JeanZ (31. Jan 2011)

The_S hat gesagt.:


> Das WTK!?



Ja, sieht so aus. in dem netten Buch 'Beginning Java ME Programming' stand leider nur sehr nebulös, man solle JME instalieren.


----------



## JeanZ (1. Feb 2011)

Welche Plattform empfielht sich für CDC Anwendungen? Ich habe CrEme geladen:

NetBeans CDC Emulator Platform Setup Guide

und es gibt Kompilierfehler: setFocusable() in JComponent nicht bekannt.

Mein Fehler?


----------

