2011-07-13 59 views
0

我正在使用XML文件向服务器发送一些请求。我应该得到相应的答复。但我在URL中获取文件未找到例外。我的代码在这里。如何通过XML在服务器上发送数据,并获取响应android

public InputStream testPost(String xmlString,URL url) 
{ 
    try 
    { 
     httpClient = new DefaultHttpClient(); 
     connection = (HttpURLConnection)url.openConnection(); 
     connection.setDoInput(true); 
     connection.setDoOutput(true); 
     connection.setUseCaches(false); 
     connection.setRequestMethod("POST"); 
     connection.setRequestProperty("Content-Type", "text/xml"); 
     DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream()); 
     outputStream.writeBytes(xmlString); 
     outputStream.flush(); 
     isResponse = (InputStream) connection.getInputStream(); 
    } 
    catch(UnknownHostException e) 
    { 
     Log.e("Failure","Network Failure"+e.toString()); 
    }  
    catch(SocketException e) 
    { 
     Log.e("Failure--","Network Failure"+e.toString()); 
    } 
    catch(Exception e) 
    { 
     e.printStackTrace(); 
    } 
    return isResponse; 
} 



public void addLocation() 
{ 
    try 
    { 
     String strAddLocation = "<useraccount>" + 
     "<id>"+1+"</id>" +"<location>"+ 
     "<geocode>"+77.254188+","+28.692365+"</geocode>" + 
     "<address>3523 16th street</address>" + 
     "<city>Hyd</city>" + 
     "<state>NY</state>" + 
     "<zip>"+11006+"</zip>" + 
     "<country>USA</country>" + 
     "<is_primary>"+false+"</is_primary>" + 
     "</location>"+"</useraccount>"; 

     Log.i("this", strAddLocation); 

     urlPost = new UrlPost(); 

     addLocationInputStream= urlPost.testPost(strAddLocation, new URL(AppConstants.HOST_URL+AppConstants.ADD_LOCATION+1)); 
     if(addLocationInputStream!= null) 
     { 
      Log.i("the output is coming hare", "add location"); 
     } 
     InputStreamReader reader = new InputStreamReader(addLocationInputStream); 
     StringBuilder buf = new StringBuilder(); 
     char[] cbuf = new char[ 2048 ]; 
     int num; 
     while (-1 != (num=reader.read(cbuf))) 
     { 
      buf.append(cbuf, 0, num); 
     } 
     String result = buf.toString(); 
      System.err.println("\nResponse from server after delete = " + result); 
     reader.close(); 
      Log.i("reponce","\nResponse from server after delete = " + result); 
    } 

     catch(Exception ee) 
     { 
     Log.i("the error is here", ee.toString()); 
     } 

} 

回答

0

你有没有加入

<uses-permission android:name="android.permission.INTERNET" /> 

清单标签的内部和应用程序标记之外你AndroidMainfest.xml文件?

+0

是的..我已经添加到Mainfest.xml文件的所有权限。 – Kamal

相关问题