В моем приложении я хочу загрузить изображение на веб-сервер, где у меня есть веб-сервис asmx.в этом веб-сервисе есть два параметра, один из которых - имя файла и файл в байтовом массиве.но когда я вызываю его с помощью soap api, оно выдает исключение как
java.lang.RuntimeException: невозможно сериализовать: [B @ 8357037
Вот мой коддля Android, где я вызываю следующий метод в классе обслуживания намерения.
public void uploadFile(String sourceFileUri,String fileName)
{
try
{
File file = new File(imgPath);
byte[] bytesArray = new byte[(int) file.length()];
try
{
FileInputStream fis = null;
fis = new FileInputStream(file);
fis.read(bytesArray); //read file into bytes[]
// fis.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
SoapObject request = new SoapObject(WSDL_TARGET_NAMESPACE,OPERATION_NAME);
request.addProperty("f",bytesArray);
request.addProperty("fileName",fileName.toString());
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE httpTransport = new HttpTransportSE(SOAP_ADDRESS);
try
{
httpTransport.call(SOAP_ACTION, envelope);
Object response = envelope.getResponse();
Toast.makeText(getBaseContext(), response.toString(),Toast.LENGTH_LONG).show();
}
catch (Exception exception)
{
Toast.makeText(getBaseContext(), exception.toString(),Toast.LENGTH_LONG).show();
}
Как позвонить в службу asmx или как исправить указанное выше исключение?