Android: как передать файл XML в .net WebService и обработать файл XML в веб-сервисе? - PullRequest
0 голосов
/ 12 декабря 2011

Я хотел бы создать и передать файл XML в веб-службы .net, используя следующий код. Тем не менее, я не знаю, как получить и прогрессировать этот XML-файл в .net Web Services. Можете ли вы помочь мне решить эту проблему, пожалуйста?

public void registration(String[] data) {       

 String line = "<UserData
                Name=\"Username" Email = \"emaiAddress" Password = \"Password" +
                "SecurityQuestion = \"Question" SAnswer = \"SAnswer"/>";

 try {

  DefaultHttpClient httpClient = new DefaultHttpClient();

  HttpPost httpPost = new HttpPost(localhost + "UserData");

      StringEntity se = new StringEntity(line, HTTP.UTF_8);

      se.setContentType("text/xml");

  httpPost.setEntity(se);

  HttpResponse httpResponse = httpClient.execute(httpPost);
  HttpEntity httpEntity = httpResponse.getEntity();             

      line = EntityUtils.toString(httpEntity);

  } catch (UnsupportedEncodingException e) {            

  }
}

Могу ли я узнать, как получить атрибут из этого XML в веб-службах. Я пытаюсь использовать следующий код. Но застрял и не знаю, как поступить.

//user registration

[WebMethod]
public void registration(XmlDocument data)
{
     XmlDocument xml = data;
     var username = xml.GetElementsByTagName("Username");            



}

Заранее благодарю за помощь.

1 Ответ

1 голос
/ 12 декабря 2011

Попробуйте это.,

public void registration(String[] data) {       

     String line = "<UserData
                    Name=\"Username" Email = \"emaiAddress" Password = \"Password" +
                    "SecurityQuestion = \"Question" SAnswer = \"SAnswer"/>";

     try {

      DefaultHttpClient httpClient = new DefaultHttpClient();

      HttpPost httpPost = new HttpPost(localhost + "UserData");

          StringEntity se = new StringEntity(line, HTTP.UTF_8);

          se.setContentType("text/xml");

      httpPost.setEntity(se);

      HttpResponse httpResponse = httpClient.execute(httpPost);
      HttpEntity httpEntity = httpResponse.getEntity();     

      if (httpResponse != null) {       
                    InputStream in = httpResponse.getEntity().getContent();
                    DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
                    Document doc = builder.parse(in);

                    if (doc != null) {

                        NodeList Username_node = doc.getElementsByTagName("Username");
                        String usrname = Username_node.item(0).getChildNodes().item(0).getNodeValue();
                        System.out.println(""+usrname);
                    }
                } else {
                    showAlert(thisActivity, "No response");
                }

      } catch (UnsupportedEncodingException e) {            

      }
      }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...