• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Devaka Cooray
  • Paul Clapham
  • Tim Cooke
  • Knute Snortum
  • Bear Bibeault
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Piet Souris
  • Ganesh Patekar
  • Frits Walraven
  • Carey Brown
  • Tim Holloway

Access Dbase with Http connection

Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am new to J2ME and have come across a problem regarding Http connection. I simply want to pass a parameter from a Palm to the server, this parameter is then used to query the database and the information is sent back to the Palm top.
I managed to pass the parameter to a JSP page, which I then changed and passed back to the Palm top. However when trying to use this parameter to query the database, the results are not sent back to the Palm top. Even though when I execute the JSP with the parameter attached to the end of the URL it works fine? I'll attach the code. If anyone could help I would appreciate it.
name = (request.getParameter("name"));
name2 = name + "2";
type = name;
java.util.Date today = new java.util.Date();
out.println("Got: "+name);
out.println("Name2: "+name2);
out.println("Date&time: "+today);
String connectionURL = "jdbc:mysql://localhost:3306/CCS?user=marikaludmann;password=ludmann";
Connection connection = null;
Statement statement = null;
ResultSet rs = null;
connection = DriverManager.getConnection(connectionURL, "", "");
statement = connection.createStatement();
rs = statement.executeQuery("SELECT * FROM VALVE_TYPE WHERE TYPE = '" + name + "'");
while (rs.next()) {
type = rs.getString("type");
out.println("type: "+type);
id = rs.getInt("valve_type_id");
out.println("ID: "+id);
public class InvokeJSPMidlet extends MIDlet implements CommandListener {
Display display = null;

TextField name = null;
Form form;
String url = "";
static final Command callCommand = new Command("date?", Command.OK, 2);
static final Command clearCommand = new Command("clear", Command.STOP, 2);
String myname;

public InvokeJSPMidlet() {
display = Display.getDisplay(this);
name = new TextField("Name:", " ", 25, TextField.ANY);
form = new Form("Invoke JSP");
public void startApp() throws MIDletStateChangeException {
public void pauseApp() {
public void destroyApp(boolean unconditional) {

void invokeJSP(String url) throws IOException {
HttpConnection c = null;
InputStream is = null;
OutputStream os = null;
StringBuffer b = new StringBuffer();
TextBox t = null;
try {
c = (HttpConnection)Connector.open(url);
c.setRequestProperty("IF-Modified-Since", "25 Nov 2001 15:17:19 GMT");
c.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
c.setRequestProperty("Content-Language", "en-CA");
c.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

os = c.openOutputStream();
// os.flush();
is = c.openDataInputStream();
int ch;
while ((ch = is.read()) != -1) {
b.append((char) ch);
t = new TextBox("Date", b.toString(), 1024, 0);
} finally {
if(is!= null) {
if(os != null) {
if(c != null) {
public void commandAction(Command c, Displayable d) {
String label = c.getLabel();
if(label.equals("clear")) {
} else if (label.equals("date?")) {
myname = name.getString();
try {
}catch(IOException e) {}
Ranch Hand
Posts: 35
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You need to URL-encode the name. See
On the servlet, you need to escape apostrophes and backslashes before putting the name in your SQL. Precede each apostrophe or backslash with a backslash to escape it. If you don't do this, you have a SQL injection security hole.
You may also have better luck calling os.close() before you open the input stream in your MIDlet. Otherwise, the Nokia 7650 won't send your request properly.
Don't get me started about those stupid light bulbs.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!