Hallo zusammen,
ich komme bei folgendem Problem nicht weiter:
- Ich bilde von einer Datei die Prüfsumme via
Ich kriege also ein Byte-Array zurück.
Dieses wandle ich einen String um und URL-kodiere es noch:
So, nun häng ich diesen String an meine restlichen URL-Parameter an und verschicke ihn über http (Die Kommunikation findet zwischen zwei Servlets statt)...
So weit, so schlecht, denn was dann bei meinem Empfänger-Servlet ankommt, sieht weder so aus wie CheckSumme nicht URL-kodiert, noch sieht es so aus wie die CheckSumme Url-kodiert.
Beispiel:
Checksumme vor URL-Kodieren und vor dem Verschicken als String:
Checksumme NACH URL-Kodieren und vor dem Verschicken als String:
Checksumme nach dem Empfang als String:
Mir ist das alles so nicht ganz klar.....
Wie muss ich denn mit diesem Byte-Array umgehen um das über http übertragen zu können?
Ich danke schon mal jetzt für jede Hilfe!
ich komme bei folgendem Problem nicht weiter:
- Ich bilde von einer Datei die Prüfsumme via
Code:
private byte[] calcChecksum(OutputStream output) {
MessageDigest digest = null;
byte[] checkSum = null;
try {
digest = MessageDigest.getInstance("MD5");
digest.update(output.toString().getBytes());
checkSum = digest.digest();
} catch (NoSuchAlgorithmException e) {
logger.error("NoSuchAlgorithmException:");
logger.error(e.getMessage());
logger.error("Stacktrace: ", e);
return null;
}
return checkSum;
}
Ich kriege also ein Byte-Array zurück.
Dieses wandle ich einen String um und URL-kodiere es noch:
Code:
String checkSum = URLEncoder.encode(new String(checkSumByteArray))
So, nun häng ich diesen String an meine restlichen URL-Parameter an und verschicke ihn über http (Die Kommunikation findet zwischen zwei Servlets statt)...
So weit, so schlecht, denn was dann bei meinem Empfänger-Servlet ankommt, sieht weder so aus wie CheckSumme nicht URL-kodiert, noch sieht es so aus wie die CheckSumme Url-kodiert.
Beispiel:
Checksumme vor URL-Kodieren und vor dem Verschicken als String:
Code:
\u0484@S\ufffdV\ufffd3\ufffdq\ufffd=\ufffdO\ufffd
Checksumme NACH URL-Kodieren und vor dem Verschicken als String:
Code:
%3F%40S%3FV%0E%3F3%3Fq%3F%3D%3FO%3F
Checksumme nach dem Empfang als String:
Code:
?@S?V?3?q?=?O?
Mir ist das alles so nicht ganz klar.....
Wie muss ich denn mit diesem Byte-Array umgehen um das über http übertragen zu können?
Ich danke schon mal jetzt für jede Hilfe!