Solaris

Heute habe ich eine 18 GB Festplatte, die ich letzte Woche bei EBay fuer 6,50 Euro ersteigert habe bekommen.

Sofort habe ich die in meine Sun Ultra 60 eingebaut und OpenSolaris 10 05/08 installiert. Das hat eine weile gedauert, aber versuch mal Windows Vista auf einem 10 Jahre alten PC zu installieren ….

Plan9 (aber nicht from outer Space) Teil 1

Ich bin ja so ein wenig ein Fan der Betriebssysteme mit dem x im Namen (mit zwei ausnahmen: bei Solaris ist kein x im Namen und Mac OS/X kenn ich nicht).

Seit einigen Jahren wird an den Bell Labs, das sind die Nachfolger jener bei welchen ursprünglich mal UNIX auf der PDP11 entwickelt wurde,  ein “Nachfolger” entwickelt. Der hat den Namen Plan9 angelehnt an den Legendären Science-Fiction Film”Plan 9 from outer Space” von Ed Wood. Das Konzept des “alles ist ein File” soll bei diesem Betriebssystem wirklich für alles gelten, z.B. auch für Netzwerkressourcen. Natürlich kann so ein neues Betriebssystem nicht ohne eine grafische Oberfläche daherkommen, deswegen wurde “rio” dazugebaut. Der “root”Benutzer heißt hier glenda, auch in Anlehnung an einen Ed Wood Film.

Hört sich alles ziemlich interessant an, oder? Also gut, gleich mal ausprobieren.

Da das ganze Open Source ist und von http://plan9.bell-labs.com/plan9/download.html heruntergeladen werden kann, stellt auch das kein Hindernis dar.

Also gedacht getan!

Da ich ja nun zwar schon so den einen oder anderen Rechner bei mir zuhause rumstehen habe, aber keinen nur für Plan9 reservieren wollte musst das ganze in einer Virtuellen Maschine laufen.

Als erstes habe ich mich an VirtualBox von Sun versucht. RPM Paket von https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=innotek-1.6-G-F@CDS-CDS_SMI für das entsprechende Host Betriebssystem herunterladen. Dann einfach das Paket installieren (in meinem Fall für Fedora Core 9):

rpm -ivh VirtualBox-1.6.2_31466_fedora9-1.i586.rpm

Jetzt kann mit dem erstellen der Virtuellen Maschine begonnen werden. Das erstellen, verwalten und ändern von virtuellen Maschinen geschieht mit dem Befehlt VBoxManage. VM anlegen:

VBoxManage createvm plan9

Noch eine virtuelle Platte mit 1 GB anlegen:

VBoxManage createvdi -filename plan9.dsk -size 1024

Diese “Platte” muss noch registriert werden:

VBoxManage registerimage disk plan9.dsk

Jetzt der VM noch ein wenig mehr Speicher gönnen

VBoxManage modifyvm -memory 512M

Und schon kann damit gearbeitet werden:

VBoxSDL -hda .VirtualBox/VDI/plan9.dsk -cdrom Download/plan9.iso -vm plan9

Damit startet die Virtuelle Maschine und bootet vom CD Image. Ach ich vergaß: damit ein Benutzer mit VirtualBox arbeiten kann muss er der Gruppe vboxusers angehören.

Auf diese Weise konnte ich plan9 installieren. Allerdings war das ganze ziemlich zäh und die “Load” anzeige die Plan9 bei der Installation zeigt hatte immer ca. 15.000 Interrupt anfragen. Ich habe ein wenig mit den Parametern der virtuellen Maschine rum gespielt, aber ohne erfolg.

Also zweiter Versuch mit qemu-kvm. Die Installation unter Fedora Core 9 ist ziemlich einfach:

yum install kvm

Damit hat man dann schon alles was man benötigt. Natürlich muss auch hier eine Image Datei für die virtuelle Platte erzeugt werden:

dd if=/dev/zero of=plan9.dsk bs=1024 count=1024000

damit bekommt man ein Image von (nicht ganz) 1GB. Gestartet wird die VM nun über:

qemu-kvm -cdrom Download/plan9.iso plan9.dsk -m 512

Und schon gehts los:
plan9_1.pngplan9_2.png

Die Installation kann beginnen. Diesmal gibts auch keine Probleme mit den Interrupts.

Nach der Installation und dem ersten Login (mit dem Benutzer glenda, das ist gewissermaßen der “root” Benutzer von plan9) sieht das ganze dann so aus.

plan9_3.png

So genug für heute. Fortsetzung folgt …

Ich bin nicht allein

Seit einiger Zeit arbeite ich an einem Projekt für einen Kunden. Dort wird die JPA mit der Implementierung Toplink Essentials verwendet.

Was mich das Ding Nerven gekostet hat!!!!!! Manchmal hab ich den Eindruck da sind mehr Fehler als funktionierende Features drin. So ein paar Highlights sind:

  • Die Umsetzung von EJBQL (oder JPQL) in SQL funktioniert nicht fehlerfrei. Wenn man es geschickt anstellt (so wie ich) baut er einen Select der ein kartesisches Produkt zurückliefert.
  • Laut Dokumentation lässt sich über einen Hint festlegen wie gecached werden soll. In einem Master Detail Modell funktioniert das aber immer nur für den Master…
  • Zumindest im OC4J kann ich nur einen persistence Provider verwenden. Das ist ja ganz prima, und was mache ich wenn ich Daten aus mehr als einer Datenbank benötige?
  • Das schreiben über merge funktioniert nicht zuverlässig. Ich hab wirklich an mir gezweifelt, aber es stimmt: Ab und zu vergisst der Toplink Essentials einfach Daten in die Datenbank zu schreiben. Obwohl ich ihm schon mit einem explizitem Merge gesagt habe er soll das tun! Mir war nicht möglich darin in irgendeiner Form einen Determinismus zu erkennen!
  • Und da kommt dann auch schon der nächste Bug: wenn der merge bei einem Detail Objekt einen Update machen soll dann “vergisst” er das auf jeden Fall!

So schön die JPA ist, mit Toplink Essentials kann man das nicht verwenden! Da ist man nur am Workaround bauen.

Ich habe schon einige sachen mit JPA und Hibernate gemacht. Der ist zwar jetzt auch nicht so ganz ohne, aber er hat (zumindest bei mir) immer ohne Probleme funktioniert.

Jetzt habe ich aber heute das hier auf diesem Blog entdeckt:

“For now I’ll keep using OpenJPA until the Glassfish people can make Toplink Essentials stop sucking so damn much. OpenJPA is a bit more pedantic anyway, and that’s a good thing. My code should end up tighter as a result”

Ich glaub ich muss mir mal OpenJPA angucken.

Spazierstöcke

Jetzt muss ichs doch schreiben! Obwohl es bestimmt schon hundert andere auch getan haben. Aber manchmal nervts halt einfach.

Seit einigen Jahren sind ja Spazierstöcke wieder modern. Anders als früher hat man nicht nur einen sondern gleich zwei davon (schliesslich hat man ja auch zwei Hände, oder?). An sich ist das ja auch nix schlimmes. Das Problem ist nur das die Menschen die damit Spazierengehen in der Regel selbiges in Ortsrandgebieten in Rudeln tun. Und weil die Ärzte sagen das man sich beim Sport nicht überanstrengen soll, also sich nur soweit belasten soll das man nebenher auch noch problemlos Reden kann, wird auch ständig ausprobiert ob man sich schon überanstrengt hat. Das wär ja prinzipiell auch nicht weiter schlimm. Schlimm ist nur das die Rudel sämtliche Wege in voller breite Ausnutzen. Wenn man dann mit dem Rad von hinten an eine solche Gruppe herankommt wird garantiert jegliches Klingeln ignoriert (oder einfach nicht gehört, schliesslich muss man ja ausprobieren ob man sich nicht schon überanstrengt hat). Was dann dazu führt das man jedes mal abbremsen und laut rufen muss “Entschuldigung, könnten sie mich bitte durchlassen!”. Und eigentlich ists auch egal ob man von hinten oder von vorn an eine solche Gruppe herankommt, da diese eigentlich ständig damit beschäftigt ist zu überprüfen ob sich die einzelnen Mitglieder schon übersanstrengt haben können sie sich ja leider nicht auf ihre Umwelt konzentrieren.

So, das musste mal gesagt werden!

Hammerstein oder der Eigensinn

Letztens hab ich von Hans Magnus Enzensberger “Hammerstein oder der Eigensinn” gelesen.

Das Buch handelt von dem General Hammerstein, und seiner Familie. Er bis war vor der “Machtergreifung” der Nazis “Chef der Heeresleitung”, das war sowas wie der Oberbefehlshaber der Wehrmacht, obwohl es dieses Amt nach den Richtlinien des Versailler Vertrags gar nicht geben durfte. Nach der Machtergreifung, nachdem Hitler in der Dienstwohnung von Hammerstein seine Kriegspläne dargelegt hat, ist er dann zurückgetreten.

Auch seine Kinder waren damals nicht gerade Anhänger der Nazis. Seine Töchter haben irgendwie alle mit der KPD konspiriert und zwei seiner Söhne wurden nach dem 20. Juli 1944 gesucht und mussten sich verstecken (auch wenn nur einer tatsächlich direkt am 20. Juli beteiligt war).

Eine durch und durch faszinierende Geschichte die von durch und durch faszinierenden Menschen handelt.

Das ganze ist keine trockene Lektüre sondern ganz im Gegenteil sehr locker geschrieben. Vor allem die Form (es gibt z.B. postume Interviews mit den Protagonisten) macht das ganze leicht verständlich.

Also eine durchaus empfehlenswerte Lektüre.

Mit dem Rad nach Schwäbisch Hall

Ich wohne in Ludwigsburg, und ich weiß auch nicht so genau warum, aber irgendwie ist mir in den Sinn gekommen mit dem Rad nach Schwäbisch Hall zu fahren. Also hab ich erst mal auf meiner ADFC Radkarte nach einem Radweg dorthin gesucht. Geht aber nicht, weil is nicht. Auf der Karte ist Schwäbisch Hall schon gar nicht mehr drauf.

Also hab ich im Internet (z.B. www.openstreetmap.org) nachgeschaut, aber auch da gibts leider nicht viel zu sehen.

Also doch ganz klassisch in den Buchladen um die Ecke und nach einer Karte suchen. Da hab ich dann auch eine gefunden vom “Landesvermessungsamt Baden-Württemberg”. Und siehe da, es gibt fast durchgängig Radwege von Ludwigsburg nach Schwäbisch Hall.

Da ich, eher ein wenig unmotiviert, Mitte Juni zwei Wochen Urlaub hatte wars klar: da Fahr ich los! Dummerweise hat mir aber just an jenem Freitag an dem ich fahren wollte mein Knie weh getan. Also gut, dacht ich mir, wart ich halt noch ein wenig bis mein Knie wieder ok ist. Als das mit meinem Knie aber nicht besser wurde bin ich einfach trotzdem losgefahren (interessanterweise hat es dann danach nicht mehr weh getan).

Also bin ich Mittwoch morgen so gegen 8.30 losgefahren. Erst zum Neckar und dann über Marbach, Steinheim und Rielingshausen nach Backnang. Ich finde das ist die angenehmere Strecke. Über Kirchberg die Murr entlang steht man irgendwann im Wald und muss tierisch den Berg hoch. Die Rielingshausen Strecke ist zwar auch bergig, ich finds aber alles in allem angenehmer zu fahren. Auf jeden Fall ist man dann nach ca. 25km in Backnang. Von Backnang aus ist der Radweg dann sogar bis Sulzbach ausgeschildert und führt ziemlich eben an der Murr entlang. Also kein Problem soweit.

Aber dann fings an. Kurz vor Sulzbach vernahm ich ein merkwürdiges Geräusch von meinem Hinterrad. Ich halte an, halte das Rad hoch, drehe es um zu gucken ob irgendwas schleift. Aber nichts, alles in Ordnung.

Denkste!!! Platt wars. Im Schlauch waren gleich zwei Löcher. Im Mantel hab ich nichts entdeckt. Wie die Löcher da reingekommen sind ist mir völlig schleierhaft. Ist ja aber kein Problem schliesslich hat man immer einen Ersatz Schlauch dabei.

So, dann konnts weitergehen. Also ab nach Sulzbach. Ich glaube die Strasse, von welcher später der Radweg nach Großerlach abzweigt habe ich dann in Sulzbach auch gefunden. Allerdings ist die komplett wegen einer Baustelle gesperrt. Also muss man da ein wenig drumrum fahren. Das ist ganz nett weil man das angrenzende Wohngebiet in Sulzbach so kennenlernt :-) Leider hab ich bei der Gelegenheit wohl den Abzweig zum Radweg nach Großerlach verpasst, und die Strecke ist so Steil und so lang, das man da freiwillig nicht mehr umdreht. Aber Umwege erhöhen ja bekanntlich die Ortskenntnis :-)

Ja da war ich dann in Kleinhöchberg. Laut Karte kann man rechts abbiegen, durch den Wald und dann nach Grosserlach fahren. Das Problem ist nur, da ist wirklich überhaupt nix mehr ausgeschildert! Tja und so irrte ich dann bestimmt eine Stunde im Wald herum und habe versucht mit meinem rudimentären Orientierungssinn wenigstens einigermaßen in die richtige Richtung zu fahren. Irgendwann war ich sogar so weit das ich mir gesagt habe, wenn jetzt ein auf meiner Karte verzeichneter Ort kommt und ich einen Weg nach Sulzbach finde fahr ich wieder zurück! Und dann irgendwann in diesem wirklich völlig Menschenleeren Wald hab ich dann einen älteren Herrn (er war bestimmt mitte 70) getroffen der vorher mit seiner Motorsäge eine breite Schneise in den Wald geschlagen haben muss (vielleicht wars auch ein Sturm, wer weiss?). Den hab ich dann gefragt wo es denn hingeht wenn ich diesen Weg weiterfahre. Leider hab ich von der Antwort kein Wort verstanden :-( Naja, man kann nicht alles haben.

Kam dann aber doch alles anders. Als ich endlich wieder aus dem Wald kam, war nicht allzu weit entfernt eine menschliche Ansiedlung. Und siehe da ich war in Altfürstenhütte. Hurraaa, die Zivilisation hatte mich wieder und wusste sogar wieder wo ich war! Altfürstenhütte ist ca. 5km hinter Großerlach. Zwar nicht unbedingt Richtung Schwäbisch Hall aber auf jeden Fall fast näher an Schwäbisch Hall als an Sulzbach. Naja und weil ich ja jetzt schon mal soweit war bin ich dann halt ins Rottal Richtung Schwäbisch Hall gefahren. Und das hat sich dann auch wirklich gelohnt. Da stehen noch die Kühe einfach so auf der Wiese rum, es gibt Ortschaften mit Namen wie “Traubenmühle”, die Strassen sind so schmal das nur ein Auto draufpasst (was aber nix ausmacht weil da eh keine Autos fahren, zumindest hab ich keine gesehen). Ich weiß nicht ob die Kunde von der Erfindung des Automobils schon so weit vorgedrungen ist? Ist einfach sehr idyllisch, total schön

Die letzten 10km vor Schwäbisch Hall hab ich dann leider keinen Radweg mehr gefunden und bin der Straße lang gefahren. Ist prinzipiell auch kein Problem, da die Strassen dort sehr wenig befahren sind. Das Problem sind eher die Haller Autofahrer. Aber ich hab mir sagen lassen das es auch Menschen gibt die Freiwillig auf Mallorca Radfahren. Das ist glaub ich auch nicht schlimmer :-) Lohnt sich aber auf jeden Fall, weil wo sonst sieht man weitab jeder Ortschaft eine Tempobegrenzung “70 km” mit dem Schild “Vorsicht Schulbushaltestelle”?

Mein Rad in Schwäbisch Hall

Ich war dann nach ungefähr 80km ziemlich genau um 14.00 Uhr in Hall. Wenn man die Waldstrecke um Großerlach ein wenig abkürzt kommt man sicher auch mit 70 km aus :-)

Hier noch ein Link zur Karte

Fleisch ist mein Gemüse

Am Montag war ich im Kino. Dort habe ich mir “Fleisch ist mein Gemüse” angesehen.

Absolut Sehenswert, sehr sehr witzig.

Ich wusste gar nicht das man so viele Peinlichkeiten erleben kann.

Es geht um Heinz der in den 80gern mit seiner Mutter zusammenwohnt und nicht so recht weiß was aus ihm mal werden soll. Und dann wird er von der Band “Tiffany’s” angeheuert, die übers platte Land (weil im Norden der Republik) zieht und auf Hochzeiten und Vereinsfesten spielt. Ach ja und Heinz hat wirklich ganz schlimm Akne.

Ein Lob an die Ausstattung, die ganzen alten 80ger Passats und Derbys (kann sich da noch jemand dran erinnern?) die durchs Bild fahren, der graue Post Telefonapparat und nicht zu übersehen die Couchgarnitur und die Tapeten!

Und auch die Maskenbildner haben großartig gearbeitet. Allein die Pickel in Heinz’ Gesicht sind sehenswert!!!!

Web Services mit EJB 3.0 und JPA

Ich hab in letzter Zeit mal ein wenig mit durch EJB 3.0 implementierte SOAP Web Services rumgespielt. Alles in allem ist das prima, einfach ein paar Annotationen, und schon hat man einen Web Service.

Wenn man jetzt aber versucht seine JPA Klassen (die können ja serialisiert werden) über diesen Web Service zu schicken dann bekommt man (vorausgesetzt das Datenmodell besteht aus mehr als einer Klasse) die Fehlermeldung das “circular References” vorhanden sind.

Ist ja eigentlich auch klar. Die Java Klassen referenzieren sich ja mit “Zeigern” während im XML (dem SOAP Body) sowas natürlich nicht geht.

Die Frage ist nun ob man dem Container beibringen kann nur entweder die

@OneToMany

oder die

@ManyToOne

Methode zu serialisieren, und die jeweils andere zu ignorieren. Denn dann würds ja funktionieren. Vielleicht find ich da ja noch was …

Update Montag den 07. Juli 2008:
Also ich hab ganz schön lang gesucht und leider nix gefunden. Ich fürchte man kommt um DTO’s in diesem Zusammenhang nicht herum. Schade …

Update Sonntag den 04. Januar 2009:
Mann manchmal stellt man sich an! Ist doch ganz einfach, bevor man die Pojo’s als SOAP Nachricht verschickt löscht man in der EJB einfach die circular Reference raus. Voila, und schon gehts! Also nix mit DTO’s!!!!!

Noch ein Blog, aber eins von mir!

So, jetzt hab ich mich durchgerungen und ein Blog eröffnet. Ich bin selbst mal gespannt was sich hier so alles ansammeln wird. Allen die sich hierher verirren wünsch ich auf jeden Fall schonmal viel Spaß beim Lesen.

Viele Grüße und viel Spaß