Nov 26

Nachdem mir gestern Abend der Rechner abgestürzt war, startete heute mein Eclipse nicht mehr, sondern brachte nur einen Fehler-Dialog mit der Meldung:
An error has occured see the log file ~/workspace/.metadata/.log

Also ab in die Console und ein
tail -f ~/workspace/.metadata/.log
brachte folgende Fehlermeldung im Log-File:

!ENTRY org.eclipse.core.jobs 2 2 2014-11-26 11:27:35.026
!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.ui.internal.activities.MutableActivityManager$3$1

Dank Google fand ich dann im Eclipse Forum die recht simple Lösung. Einfach in der Console Eclipse mit dem Paramter -clean starten:

eclipse -clean

Tagged with:
Jun 02

Heute stand ich mit einem Kollegen vor einem Rätsel. Zur Implementierung eines Webservices, sollte der Anfrage ein MD5-Hash mitgeschickt werden und Perl und Java lieferten ein anderes Ergebnis als PHP?!?

Der Input-String: 0815658620090602%§Hjk25Tlu9v
Die Ergebnisse:
PHP: bfea1d1f6015503226064dca7fa7d6af
Java: 30588faeab54f18136bb8f0e47285984
Perl: 30588faeab54f18136bb8f0e47285984

Auf des Rätsels-Lösung kamen wir durch Zufall von selbst, nachdem Google leider keine Hilfe war, bzw. wir ja auch nicht wußten wonach wir genau suchen sollten.
PHP verwendet den ISO-8859-1(5) Zeichensatz, jedoch Java und Perl den UTF-8 Zeichensatz!
Der Übeltäter ist das §-Zeichen, welches den MD5-Hash in verschiedenen Zeichensätzen zu unterschiedlichen Ergebnissen führt! Sprich, den Input-String in Perl mit

my $cd = Locale::Recode->new
(from => 'UTF-8', to => 'ISO-8859-1');
$cd->recode($Input-String)

umwandeln und schon kommt auch in Perl das gleiche Ergebnis wie in PHP raus!

Also immer den Zeichensatz beachten, mit welchem der MD5-Hash erzeugt wird!

Tagged with:
preload preload preload