Link to home
Start Free TrialLog in
Avatar of vittalmareddy
vittalmareddy

asked on

call servlet from javascript

Hi
we need an implementation, to call servlet, from java script, servlet has to return back value to javascript from servlet has called.

ASKER CERTIFIED SOLUTION
Avatar of David H.H.Lee
David H.H.Lee
Flag of Malaysia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of gvasquez95
gvasquez95

Ajax is what you need: http://en.wikipedia.org/wiki/Ajax_(programming)

There are many implementatios available, a short list would be:

- Prototype: http://www.prototypejs.org/
- Scriptaculous: http://script.aculo.us/
- Dojo: http://www.dojotoolkit.org/

There are many others, but I think any of the later would do the work. Of course you can also do it manually, coding all of it, but why reinvent the wheel when it's already available for free?
jQuery is a very good javascript library which provides several APIs along with post request from javascript...

Attached is a very simple example. (put all files in one directory and open jspost.html)

for more info check
http://api.jquery.com/jQuery.post/
jspost.html
a.html
jquery-1.4.2.js
This is exactly what you need.

http://www.ajaxprojects.com/ajax/tutorialdetails.php?itemid=222

I prefered to use some code earlier in my project.


The calling AJAX method

function ajaxFunction() {
  if(xmlhttp) {
   var txtname = document.getElementById("txtname");
    xmlhttp.open("POST","getname",true); //getname will be the servlet name
    xmlhttp.onreadystatechange  = handleServerResponse;
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlhttp.send("txtname=" + txtname.value); //Posting txtname to Servlet
  }
}

Inside the Servlet getname

  if(request.getParameter("txtname") != null) {
   name = request.getParameter("txtname");
  }
                else {
                       name = "";
                }
           out.println("You have successfully made Ajax Call:" + name);

Open in new window

Avatar of vittalmareddy

ASKER

this is what i was looking for