cómo enviar los datos xml al servidor en android
Como soy nuevo en Android Por favor, proporcionarme el enlace del tutorial para publicar los datos XML en el servidor. Estoy enfrentando el problema es la ejecución de la solicitud de correos
public void uploadFileToServer() { DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(url_context + "/orders/order"); httppost.addHeader("Accept", "text/xml"); httppost.addHeader("Content-Type", "application/xml"); try { StringEntity entity = new StringEntity(xmlString, "UTF-8"); entity.setContentType("application/xml"); httppost.setEntity(entity); HttpResponse response = httpClient.execute(httppost); BasicResponseHandler responseHandler = new BasicResponseHandler(); String strResponse = null; if (response != null) { try { strResponse = responseHandler.handleResponse(response); } catch (HttpResponseException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } catch (Exception ex) { ex.printStackTrace(); } }
- Android - Botón de radio - el botón dibujable no se muestra en Lollipop
- Android: ¿Cómo declarar el espacio de nombres XML en styles.xml?
- Diseño de Android - RelativeLayout (color de fondo)
- ¿Podemos usar Tomcat Server en la aplicación android
- Android: Refactorización de archivos XML en Eclipse?
- Eliminar icono / logotipo de la barra de acción de android
- ¿Cómo puedo definir el diseño de un fragmento desde XML?
- Mensaje de error XML de Android
- Almacenamiento de dimensiones en un archivo xml en Android
- Cómo hacer una pantalla completa DrawerLayout en Android?
- Error al analizar XML: prefijo no enlazado en la biblioteca
- ¿Volver a calcular ScrollView en diferentes vistas de ViewFlipper?
- Listview no muestra nada y ocultar datos
craete el archivo xml basado en este ejemplo
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); // root elements Document doc = docBuilder.newDocument(); Element rootElement = doc.createElement("Order"); doc.appendChild(rootElement); //set attribute to class Attr Rattr = doc.createAttribute("Order_atrribute"); Rattr.setValue(curtrade); rootElement.setAttributeNode(Rattr); // companyid elements Element staff = doc.createElement("companyid"); rootElement.appendChild(staff); // shorten way // staff.setAttribute("id", "1"); // firstname elements Element firstname = doc.createElement("orderitems"); firstname.appendChild(doc.createTextNode("hii")); staff.appendChild(firstname);
y escribir el contenido en el archivo xml
TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(new File(this.getFilesDir().getAbsolutePath(),"file.xml")); //String s=this.getFilesDir().getAbsolutePath(); // Output to console for testing //StreamResult result = new StreamResult(System.out); transformer.transform(source, result);
publicar su archivo por
DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(url_context + "/orders/order.php"); String filePath = this.getFilesDir().getAbsolutePath(); File f=new File(filePath,"file.xml"); //byte[] data = FileOperator.readBytesFromFile(f); String content=getFileContents(f); StringEntity se = new StringEntity( content, HTTP.UTF_8); se.setContentType("text/xml"); httppost.setEntity(se); f.delete(); HttpResponse httpresponse = httpClient.execute(httppost); Log.d("xml1", httpresponse.toString()); HttpEntity resEntity = httpresponse.getEntity(); Log.d("xml2", resEntity.toString()); String result1 = EntityUtils.toString(resEntity); Log.d("xml", "writer = "+result1);
methode getFileContent es
public String getFileContent(final File file) throws IOException { final InputStream inputStream = new FileInputStream(file); final BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); final StringBuilder stringBuilder = new StringBuilder(); boolean done = false; while (!done) { final String line = reader.readLine(); done = (line == null); if (line != null) { stringBuilder.append(line); } } reader.close(); inputStream.close(); return stringBuilder.toString(); }
referencia
Sigue este tutorial 1 , tutorial 2 y esta respuesta en Send Xml Data.
Y para cualquier consulta pida a su tipo de servidor para depurar su solicitud y le dirá el problema exacto.
- Cómo implementar más de 2 niveles de navegación en com.android.support:leanback-v17
- Usando un RelativeLayout para dividir verticalmente dos fragmentos uniformemente