public static String excutePost( String targetURL, String urlParameters, String contentType, String lang, String user, String pwd) { URL url; HttpURLConnection connection = null; BufferedReader rd = null; PrintWriter writer = null; if (urlParameters == null) { urlParameters = ""; } Map<String, String> params = URLHelper.getParams(urlParameters); StringBuffer encodedParam = new StringBuffer(); String sep = ""; for (Map.Entry<String, String> param : params.entrySet()) { encodedParam.append(sep); encodedParam.append(param.getKey()); encodedParam.append("="); encodedParam.append(URLEncoder.encode(param.getValue())); sep = "&"; } if (urlParameters == null) { urlParameters = ""; } try { // Create connection url = new URL(targetURL); connection = (HttpURLConnection) url.openConnection(); connection.setRequestProperty("Content-Type", contentType); connection.setRequestProperty("Content-Language", lang); connection.setDoOutput(true); // user authentification if (user != null && pwd != null) { connection.setRequestProperty( "Authorization", "Basic " + Base64.encodeBase64((user + ':' + pwd).getBytes())); } // Send request writer = new PrintWriter(connection.getOutputStream()); writer.write(encodedParam.toString()); writer.flush(); // Get Response InputStream is = connection.getInputStream(); String line; rd = new BufferedReader(new InputStreamReader(is)); ByteArrayOutputStream outStream = new ByteArrayOutputStream(); PrintStream out = new PrintStream(outStream); while ((line = rd.readLine()) != null) { out.println(line); } out.close(); return new String(outStream.toByteArray()); } catch (Exception e) { e.printStackTrace(); return null; } finally { closeResource(rd, writer); if (connection != null) { connection.disconnect(); } } }