Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

Javascript Function (Not using a form post) To Call Servlet (where no return values are needed)

Posted on 2008-06-20
5
Medium Priority
?
807 Views
Last Modified: 2013-11-24
Hello:

I simply want to call a servlet from a javascript function.  My javascript function is not part of a form post.
The javascript function gets called from a Flash client actually.  My servlet takes a few parameters and is
expected to simply perform an update on the server side.  No html is returned for display and is not needed.

I tried something like this.:

function jsfunction()
{
        document.href.location="http://<domain.com>/servletname?parm1&parm2";
}

This doesn't work.  What is the easiest way to do this?  It needs to make the call and NOT WAIT for a response, as I my client is displaying a Flash container, and I do not want execution cycles waiting for
a return.

Please do not get involved in what my Flash client is doing and why I have it....I just need the javascript
to servlet solution without WAIT.

Thanks,

Dan
0
Comment
Question by:danw11
  • 3
  • 2
5 Comments
 
LVL 41

Expert Comment

by:HonorGod
ID: 21834641
0
 

Author Comment

by:danw11
ID: 21835018
HonorGod:

Your URL points me to a solution that is meant to update part of the DOM for changing the display
of the form.  I want a call to a servlet that does not call a callback() function.  In the example the validate()
function calls the server side.  That is good, but I don't want anything called back on the Javascript side.

Why do I need AJAX for this????

Can we do it without that?

Dan
0
 
LVL 41

Accepted Solution

by:
HonorGod earned 2000 total points
ID: 21835239
Well, Ajax, by definition, allows your program to send a request to a service
application.  You can certainly have an empty callback function, something
along the lines of



  //------------------------------------------------------------------
  // Ajax routines for service contact
  //------------------------------------------------------------------
  var xmlHttp;
 
  //------------------------------------------------------------------
  // Name: createXMLHttpRequest()
  // Role: Create the XML Request Object used by the Ajax routines
  //------------------------------------------------------------------
  function createXMLHttpRequest() {
    if ( window.ActiveXObject ) {
      xmlHttp = new ActiveXObject( "Microsoft.XMLHTTP" );
    } else if ( window.XMLHttpRequest ) {
      xmlHttp = new XMLHttpRequest();
    }
  }
 
  //------------------------------------------------------------------
  // Name: getInfo()
  // Role: Issue the request to the service
  //------------------------------------------------------------------
  function getInfo( val ) {
    createXMLHttpRequest();
    var queryString = "/ContextRoot/ServiceName?ParmName=" + val;
    xmlHttp.onreadystatechange = handleStateChange;
    xmlHttp.open( "GET", queryString, true );
    xmlHttp.send( null );
  }
 
  //------------------------------------------------------------------
  // Name: handleStateChange()
  // Role: Callback routine invoked when XML Request state changes
  //------------------------------------------------------------------
  function handleStateChange() {
  }

Open in new window

0
 

Author Comment

by:danw11
ID: 21837866
Honor God:

Excellent.  It works.  And, I now see the difference between my original attempt.:

document.href.location="http://<domain.com>/servletname?parm1&parm2";

and the AJAX solution.  The former actually redirects the browser to the URL for the servlet, which is
completely undesirable.  The latter (your AJAX solution) calls the servlet as expected without any
redirection.

Thanks,

Dan
0
 
LVL 41

Expert Comment

by:HonorGod
ID: 21838105
Glad to be of some help.  Thanks for the grade & points.

Good luck & have a great day.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will give core knowledge of JavaScript and will head in to your first JavaScript program. I am Durvesh Naik and I am here to deal with this series of JavaScript. I will teach you JavaScript in part wise , as its quite boring to read big…
JavaScript can be used in a browser to change parts of a webpage dynamically. It begins with the following pattern: If condition W is true, do thing X to target Y after event Z. Below are some tips and tricks to help you get started with JavaScript …
The viewer will learn how to implement Singleton Design Pattern in Java.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
Suggested Courses

580 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question