POST UTF-8 encoded data to the server in J2ME
By: Ash
This sample code shows how to POST UTF-8 encoded data to the server in J2ME. The first requirement is to set the content-type for the connection. You should also use a OutputStreamWriter and pass "UTF-8" as the second parameter. Also note that the first parameter passed to this function 'data' should be encoded to UTF-8 bytes.
private void sendData(StringBuffer data,String serverUrl) throws IOException
{
HttpConnection connection = (HttpConnection) Connector.open(serverUrl,Connector.READ_WRITE);
connection.setRequestMethod(HttpConnection.POST);
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
connection.setRequestProperty("Content-Length",String.valueOf(data.toString().getBytes("UTF-8").length));
connection.setRequestProperty("User-Agent","Profile/MIDP-2.0 Configuration/CLDC-1.1");
connection.setRequestProperty("Accept-Charset","UTF-8;q=0.7,*;q=0.7");
connection.setRequestProperty("Accept-Encoding","gzip, deflate");
connection.setRequestProperty("Accept","text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5");
InputStream inputStream = null;
OutputStreamWriter out = null;
byte[] readData = new byte[HTTP_INPUT_BUFFER_SIZE];
String response;
try
{
// --- write ---
out = new OutputStreamWriter(connection.openOutputStream(),"UTF-8");
out.write(data.toString());
out.close();
// --- read ---
int responseCode = connection.getResponseCode();
if (responseCode != HttpConnection.HTTP_OK)
{
throw new IOException("HTTP response code: " + responseCode);
}
inputStream = connection.openInputStream();
int actual = inputStream.read(readData);
if (actual==0)
{
throw new IOException("No response from server");
}
response = new String(readData,0,actual,"UTF-8");
if (!response.equalsIgnoreCase(SUCCESS_MESSAGE))
{
throw new IOException(response);
}
}
finally
{
if (out!=null)
{
try
{
out.close();
} catch (IOException ex) {}
}
if (inputStream!=null)
{
try
{
inputStream.close();
} catch (IOException ex) {}
}
}
}
Comment on this tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Subscribe to Tutorials
Related Tutorials
Code sample to Send SMS from a J2ME application.
Adding your own Application icon for your J2ME application (jar file)
Play a multimedia file in J2ME Program (Audio/Video) using MMAPI
Using HttpConnection in J2ME (Retrieve web content from a website to a phone)
Using HTTP vs UDP vs Socket in J2ME
RMSCookieConnector - Using Cookies in J2ME
Client Server in J2ME (Socket Programming sample)
Datagrams in J2ME (UDP Programming sample)
POST UTF-8 encoded data to the server in J2ME
Using alerts and tickers in J2ME
Using List to create a Menu and Menu items in J2ME
lists, forms, choices, gauges, text fields, text boxes in J2ME
Timer and TimerTask example in J2ME
Archived Comments
1. Great Sample, it helped me alot
Tha
View Tutorial By: Mike at 2010-03-02 04:39:57
2. AntonioCrelp
View Tutorial By: AntonioCrelp at 2017-06-03 11:45:06
3. AntonioCrelp
View Tutorial By: AntonioCrelp at 2017-06-03 13:03:53
4. BarbaraRoG
View Tutorial By: BarbaraRoG at 2017-08-16 12:43:48