import java.io.*; import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; /** * An example MIDlet to invoke a servlet. */ public class InvokeServletMidlet1 extends MIDlet { private Display display; String url = "http://127.0.0.1:8080/examples/servlet/HelloServlet"; public InvokeServletMidlet1() { display = Display.getDisplay(this); } /** * Initialization. Invoked when we activate the MIDlet. */ public void startApp() { try { invokeServlet(url); } catch (IOException e) { System.out.println("IOException " + e); e.printStackTrace(); } } /** * Pause, discontinue .... */ public void pauseApp() { } /** * Destroy must cleanup everything. */ public void destroyApp(boolean unconditional) { } /** * Retrieve a grade.... */ void invokeServlet(String url) throws IOException { HttpConnection c = null; InputStream is = null; StringBuffer b = new StringBuffer(); TextBox t = null; try { c = (HttpConnection)Connector.open(url); c.setRequestMethod(HttpConnection.GET); c.setRequestProperty("User-Agent","Profile/MIDP-1.0 Confirguration/CLDC-1.0"); c.setRequestProperty("Content-Language", "en-CA"); is = c.openDataInputStream(); int ch; while ((ch = is.read()) != -1) { b.append((char) ch); } t = new TextBox("First Servlet", b.toString(), 1024, 0); } finally { if(is!= null) { is.close(); } if(c != null) { c.close(); } } display.setCurrent(t); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import java.io.*; import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; /** * An example MIDlet to invoke a CGI script (GET method). */ public class InvokeCgiMidlet1 extends MIDlet { private Display display; String url = "http://www.javacourses.com/cgi-bin/getgrade.cgi?idnum=182016"; public InvokeCgiMidlet1() { display = Display.getDisplay(this); } /** * Initialization. Invoked when we activate the MIDlet. */ public void startApp() { try { getGrade(url); } catch (IOException e) { System.out.println("IOException " + e); e.printStackTrace(); } } /** * Pause, discontinue .... */ public void pauseApp() { } /** * Destroy must cleanup everything. */ public void destroyApp(boolean unconditional) { } /** * Retrieve a grade.... */ void getGrade(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.setRequestMethod(HttpConnection.GET); c.setRequestProperty("User-Agent","Profile/MIDP-1.0 Confirguration/CLDC-1.0"); c.setRequestProperty("Content-Language", "en-CA"); os = c.openOutputStream(); /* String str = "?idnum=182016"; byte postmsg[] = str.getBytes(); for(int i=0;i<postmsg.length;i++) { os.writeByte(postmsg[i]); } os.flush(); */ is = c.openDataInputStream(); int ch; while ((ch = is.read()) != -1) { b.append((char) ch); System.out.println((char)ch); } t = new TextBox("Final Grades", b.toString(), 1024, 0); } finally { if(is!= null) { is.close(); } if(os != null) { os.close(); } if(c != null) { c.close(); } } display.setCurrent(t); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import java.io.*; import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; /** * An example MIDlet to invoke a CGI script (POST method is used). */ public class InvokeCgiMidlet2 extends MIDlet { private Display display; String url = "http://www.javacourses.com/cgi-bin/pgrade.cgi"; public InvokeCgiMidlet2() { display = Display.getDisplay(this); } /** * Initialization. Invoked when we activate the MIDlet. */ public void startApp() { try { getGrade(url); } catch (IOException e) { System.out.println("IOException " + e); e.printStackTrace(); } } /** * Pause, discontinue .... */ public void pauseApp() { } /** * Destroy must cleanup everything. */ public void destroyApp(boolean unconditional) { } /** * Retrieve a grade.... */ void getGrade(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.setRequestMethod(HttpConnection.POST); c.setRequestProperty("CONTENT-TYPE","application/x-www-form-urlencoded"); c.setRequestProperty("User-Agent","Profile/MIDP-1.0 Confirguration/CLDC-1.0"); c.setRequestProperty("Content-Language", "en-CA"); os = c.openOutputStream(); // send input String str = "name=182016"; byte postmsg[] = str.getBytes(); for(int i=0;i<postmsg.length;i++) { os.write(postmsg[i]); } os.flush(); is = c.openDataInputStream(); int ch; // receive output while ((ch = is.read()) != -1) { b.append((char) ch); System.out.println((char)ch); } t = new TextBox("Final Grades", b.toString(), 1024, 0); } finally { if(is!= null) { is.close(); } if(os != null) { os.close(); } if(c != null) { c.close(); } } display.setCurrent(t); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import javax.microedition.rms.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; import javax.microedition.io.*; import java.io.*; public class InvokeServletMidlet2 extends MIDlet implements CommandListener { Display display = null; List menu = null; TextBox input = null; String user = null; String url = "http://127.0.0.1:8080/examples/servlet/RequestServlet2"; static final Command backCommand = new Command("Back", Command.BACK, 0); static final Command submitCommand = new Command("Submit", Command.OK, 2); static final Command exitCommand = new Command("Exit", Command.STOP, 3); String currentMenu = null; public InvokeServletMidlet2() { } public void startApp() throws MIDletStateChangeException { display = Display.getDisplay(this); menu = new List("Invoke Servlet", Choice.IMPLICIT); menu.append("Add a user", null); menu.addCommand(exitCommand); menu.setCommandListener(this); mainMenu(); } public void pauseApp() { } public void destroyApp(boolean unconditional) { notifyDestroyed(); } void mainMenu() { display.setCurrent(menu); } public void addName() { input = new TextBox("Enter first name:", "", 5, TextField.ANY); input.addCommand(submitCommand); input.addCommand(backCommand); input.setCommandListener(this); input.setString(""); display.setCurrent(input); } void invokeServlet(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.setRequestMethod(HttpConnection.POST); c.setRequestProperty("CONTENT-TYPE","application/x-www-form-urlencoded"); c.setRequestProperty("User-Agent","Profile/MIDP-1.0 Confirguration/CLDC-1.0"); c.setRequestProperty("Content-Language", "en-CA"); os = c.openOutputStream(); String str = "name="+user; byte postmsg[] = str.getBytes(); System.out.println("Length: "+str.getBytes()); for(int i=0;i<postmsg.length;i++) { os.write(postmsg[i]); } // or you can easily do: //os.write(("name="+user).getBytes()); os.flush(); is = c.openDataInputStream(); int ch; while ((ch = is.read()) != -1) { b.append((char) ch); System.out.print((char)ch); } t = new TextBox("Second Servlet", b.toString(), 1024, 0); t.addCommand(backCommand); t.setCommandListener(this); } finally { if(is!= null) { is.close(); } if(os != null) { os.close(); } if(c != null) { c.close(); } } display.setCurrent(t); } public void commandAction(Command c, Displayable d) { String label = c.getLabel(); if (label.equals("Exit")) { destroyApp(true); } else if (label.equals("Back")) { mainMenu(); } else if (label.equals("Submit")) { user = input.getString(); try { invokeServlet(url); }catch(IOException e) {} } else { addName(); } } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import java.io.*; import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class FetchPageMidlet extends MIDlet { private Display display; String url = "http://www.javacourses.com/hello.txt"; public FetchPageMidlet() { display = Display.getDisplay(this); } /** * This will be invoked when we start the MIDlet */ public void startApp() { try { getViaStreamConnection(url); } catch (IOException e) { //Handle Exceptions any other way you like. System.out.println("IOException " + e); e.printStackTrace(); } } /** * Pause, discontinue .... */ public void pauseApp() { } /** * Destroy must cleanup everything. */ public void destroyApp(boolean unconditional) { } /** * read url via stream connection */ void getViaStreamConnection(String url) throws IOException { StreamConnection c = null; InputStream s = null; StringBuffer b = new StringBuffer(); TextBox t = null; try { c = (StreamConnection)Connector.open(url); s = c.openInputStream(); int ch; while((ch = s.read()) != -1) { b.append((char) ch); } System.out.println(b.toString()); t = new TextBox("Fetch Page", b.toString(), 1024, 0); } finally { if(s != null) { s.close(); } if(c != null) { c.close(); } } // display the contents of the file in a text box. display.setCurrent(t); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import java.io.*; import java.text.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; /** * Example servlet showing request headers */ public class RequestServlet2 extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/plain"); PrintWriter out = response.getWriter(); BufferedReader br = request.getReader(); String buf = br.readLine(); out.print("Rec: "+buf); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */ import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; /** * The simplest possible servlet. */ public class HelloServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/plain"); PrintWriter out = response.getWriter(); out.println("Servlet invoked! "); out.println(new Date()); } } /** * Wireless Java * Help for New J2ME Developers * By Qusay Mahmoud * First Edition January 2002 * ISBN: 0-596-00243-2 */
You are here: Home > J2ME > MIDlet examples to invoke a servlet