コード
Bitmap bmp = (Bitmap)extras.get("data");
ByteArrayOutputStream out = new ByteArrayOutputStream();
bmp.compress(CompressFormat.JPEG, 100, out);
byte[] raw = out.toByteArray();
PassToWebservice(raw); //error
PassToWebservice(byte[] ba)
{
SoapObject envelope...
envelope.addProperty("base64bytes", ba);
...
transport.call(ACTION, envelope);
envelope.getResponse() //error: IOException cannot serialize...
}
問題
圧縮された画像をWebサービスに渡すと、「[B @ 47bcb6c8 ...をシリアル化できません...」というruntimeexceptionが発生します。何かがわかりません。上記の(疑似)コードが機能しない理由を誰かが理解できますか?それが役立つ場合、Webサービスサーバー側では、サーバーが渡されたバイトをファイルに書き込むときに例外が発生しているようです(.Net IO.File.WriteAllBytesを使用)
スタックトレース