⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 booktitleserviceviaservlets.java

📁 java web services how to program
💻 JAVA
字号:
// Fig. 14.10: BookTitleServiceViaServlets.java.// BookTitleServiceViaServlets connects to a servlet that// makes a request to the Book Titles Web service.package com.deitel.jws1.j2me.client;// import J2ME packagesimport javax.microedition.midlet.*;import javax.microedition.lcdui.*;import javax.microedition.io.*;import java.io.*;// import Deitel packagesimport com.deitel.jws1.services.BookTitles;public class BookTitleServiceViaServlets   implements BookTitles {    // URL of servlet that accesses Book Titles Web service   private final static String SERVICE_URL =       "http://localhost:8080/j2me/BookTitlesProxy";   // invoke Book Titles Web service via servlet   public String[] getBookTitles()   {      // invoke Web service and convert result to String array      try {         // establish HTTP connection to servlet         HttpConnection httpConnection =            ( HttpConnection ) Connector.open( SERVICE_URL );         // receive server data         String titles[] = getData( httpConnection );         httpConnection.close(); // close connection         return titles;      }      // handle exception communicating with HTTP server      catch ( IOException ioException ) {         ioException.printStackTrace();         return null;      }   } // end method getBookTitles   // open DataInputStream to receive data   private String[] getData( HttpConnection httpConnection )      throws IOException   {      StringBuffer data = new StringBuffer();      // open input stream from connection      InputStream inputStream = ( DataInputStream )         httpConnection.openDataInputStream();      int inputCharacter = inputStream.read();      // read all data      while ( inputCharacter != -1 ) {         data.append( ( char ) inputCharacter );         inputCharacter = inputStream.read();      }      inputStream.close(); // close stream      // convert data to String array      return parseData( data.toString(), '\n' );   } // end method getData   // string tokenizer parses String into sub-String array   private String[] parseData( String data, char delimiter )   {      int newLines = 0;      // determine number of delimiter characters in String      for ( int i = 0; i < data.length(); i++ )         // increase number of delimiters by one         if ( data.charAt( i ) == delimiter )            newLines++;      // create String array to hold String tokens      String list[] = new String[ newLines ];      int oldNewLineIndex = 0;      int currentNewLineIndex;      // store Strings into array based on demiliter      for ( int i = 0; i < newLines; i++ ) {         // determine index where delimiter occurs         currentNewLineIndex =             data.indexOf( delimiter, oldNewLineIndex );         // extract String within delimiter characters         list[ i ] = data.substring( oldNewLineIndex,             currentNewLineIndex - 1 );         oldNewLineIndex = currentNewLineIndex + 1;      }      return list;   } // end method parseData} // end class BookTitleServiceViaServlets

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -