0

I want to access wcf webservice as below code:

void farmCreate(String userName,
        String authToken) {
    String resultData = null;
    Hashtable<String, String> responseHashTable = new Hashtable<String, String>();
    try {
        FarmClass farm = new FarmClass();
        StringBuilder sb = null;
        SoapObject request = new SoapObject(Controller.NAMESPACE,  "MethodName");
        request.addProperty("aaaa", userName);
        request.addProperty("aaaa", authToken);
        request.addProperty("aaaa", farm);
        request.addProperty("aaaaa", "Add");

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request);

          MarshalDate md = new MarshalDate();
            md.register(envelope);

            MarshalFloat md1 = new MarshalFloat();
            md1.register(envelope);

        HttpTransportSE androidHttpTransport = new HttpTransportSE(Controller.URL6767);
        androidHttpTransport.call(Controller.SOAP_ACTION + "method name", envelope);


        //new MarshalBase64().register(envelope);
        Object result = (Object) envelope.getResponse();

        resultData = result.toString();



    } catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
        System.out.println("error is occured :-" + e.getMessage());
    }


}

But in response, generate one error as below :-

 06-20 12:50:03.673: W/System.err(596): java.lang.RuntimeException: Cannot serialize: []
06-20 12:50:03.673: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeElement(SoapSerializationEnvelope.java:679)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeProperty(SoapSerializationEnvelope.java:663)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeObjectBody(SoapSerializationEnvelope.java:632)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeElement(SoapSerializationEnvelope.java:675)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeProperty(SoapSerializationEnvelope.java:663)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeObjectBody(SoapSerializationEnvelope.java:632)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeObjectBody(SoapSerializationEnvelope.java:616)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeElement(SoapSerializationEnvelope.java:673)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.serialization.SoapSerializationEnvelope.writeBody(SoapSerializationEnvelope.java:597)
06-20 12:50:03.684: W/System.err(596):  at org.ksoap2.SoapEnvelope.write(SoapEnvelope.java:192)
06-20 12:50:03.694: W/System.err(596):  at org.ksoap2.transport.Transport.createRequestData(Transport.java:101)
06-20 12:50:03.694: W/System.err(596):  at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:114)
06-20 12:50:03.694: W/System.err(596):  at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:90)
06-20 12:50:03.694: W/System.err(596):  at com.track.controller.SoapWebService.farmCreate(SoapWebService.java:113)
06-20 12:50:03.694: W/System.err(596):  at com.track.view.LiveStock.onCreate(LiveStock.java:82)
06-20 12:50:03.694: W/System.err(596):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
06-20 12:50:03.694: W/System.err(596):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
06-20 12:50:03.704: W/System.err(596):  at android.app.ActivityThread.startActivityNow(ActivityThread.java:2503)
06-20 12:50:03.704: W/System.err(596):  at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:127)
06-20 12:50:03.704: W/System.err(596):  at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)

So Please, Any one have idea about Serialization concept so please let me. Thanks in advance.

ρяσѕρєя K
  • 132,198
  • 53
  • 198
  • 213

1 Answers1

0

To serialize any object, you should implement Serializable. Try implementing Serializable class for FarmClass.

Raghu Nagaraju
  • 3,278
  • 1
  • 18
  • 25
  • just add 'implements Serializable' for FarmClass. lke public class FarmClass implements Serializable{} – Raghu Nagaraju Jun 20 '12 at 09:56
  • Thanks , I have used this but one another problem is coming as below.. :---- SoapFault - faultcode: 'a:DeserializationFailed' faultstring: 'The formatter threw an exception while trying to deserialize the message: – Manoj Kumar Baghel Jun 20 '12 at 10:14