Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Web, Java
Expertise: All
Oct 11, 2000

WEBINAR:

On-Demand

Full Text Search: The Key to Better Natural Language Queries for NoSQL in Node.js


How to Speed Up Data Transfer Between Servlet and Applet

We can speed up the data transfer between servlet and applet in a Web application by compressing the data transferred between them. The example below demonstrates how this is done:

Servlet Code:

 
public void doGet(HttpServletRequest req, HttpServletResponse res)
              throws ServletException, IOException
   {
     try
      {
	res.setHeader("Content-Encoding","gzip");
	OutputStream out = res.getOutputStream();
	GZIPOutputStream gz = new GZIPOutputStream(out);

	String data = "Compressed Data";

        gz.write(data.getBytes());
	gz.close();
       	out.close();
      }
     catch(Exception e)
      {
	System.out.println("In CompressServlet: Exception in doGet");
      }
  }

//Applet Code:
 
public class UnCompressApplet extends Applet {

   String fromServ = "";

   public void start()
	{
	  try
	   {
	     readData();
	   }
	  catch(Exception e)
	   {
	     System.out.println("Exception in start()");
	   }
	}


	public void paint(Graphics g)
	 {
	    // Display the obtained data
  	g.drawString("Contents of Servlet Data: " + fromServ, 10, 10);
	 }


public void readData() throws Exception
  {

  try
   {
      GZIPInputStream gz = new GZIPInputStream( getData() );

      byte[] buf = new byte[1024];
      int len;

      while ((len = gz.read(buf)) > 0)

	 fromServ = new String(buf);

      gz.close();
   }
  catch (IOException e)
   {
      System.out.println("In UncompressApplet: Exception in readData()");
   }

}

public InputStream getData() throws Exception
  {
try{
	
//URL of the Web Server
String url = "http://localhost:8080/examples/servlet/CompressServlet";

	URL postURL = new URL( url );

	URLConnection urlCon = null;

	urlCon = postURL.openConnection();

	urlCon.setDoOutput(true);
	urlCon.setDoInput(true);

	return urlCon.getInputStream();

}
    catch(Exception e)
  	{
	  e.printStackTrace();
	  return null; //something went wrong
    }

  }//end of getData


}//end of class


HTML Code :



	

	

	

	
	


Applet/Servlet Communication


    
    


Mahesh Chulet
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date