fidi: Javascript Variable einer Java Variable zuweisen

Ich möchte eine Javascript-Funktion aufrufen bei der der übergebene Wert einer Java-Variable zugewiesen wird und anschließend oder auch sofort über "setProperty" einer benutzten Bean als Variable übergeben wird.

Bsp wie es nicht geht:
function setLocationID(ID){
 <jsp:setProperty name="viewBean" property="locationNumber" param=ID />
}

Geht nicht, weil wohl der übergebene Javascript Parameter im Focus des JSP-Tags nicht bekannt ist.

Hat da jemand eine Idee???

  1. Moin!

    Bsp wie es nicht geht:
    function setLocationID(ID){
    <jsp:setProperty name="viewBean" property="locationNumber" param=ID />
    }

    Kann so nicht gehen. Das Javascript wird erst im Browser abgearbeitet. Da ist Deine JSP- Seite schon "lange" vom Server fertig bearbeitet.
    Du müsstest also die Seite oder das gesamte Objekt neu laden und die Variable im GET-String mit übergeben, also wieder serverseitig auswerten.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    --
    Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Development. Auch  für seriöse Agenturen.
    1. Das ist mir schon klar...war nur zur Beschreibung meines Problems hilfreich ;-)

      Eigentlich sieht das Problem so aus, dass ich die Javascript-methode aus einem Flash-Film aufrufen und einen Paramter übergeben möchte, der dann wiederum in eine JavaBean geschrieben werden soll.

      ;-))

      Moin!

      Bsp wie es nicht geht:
      function setLocationID(ID){
      <jsp:setProperty name="viewBean" property="locationNumber" param=ID />
      }

      Kann so nicht gehen. Das Javascript wird erst im Browser abgearbeitet. Da ist Deine JSP- Seite schon "lange" vom Server fertig bearbeitet.
      Du müsstest also die Seite oder das gesamte Objekt neu laden und die Variable im GET-String mit übergeben, also wieder serverseitig auswerten.

      MFFG (Mit freundlich- friedfertigem Grinsen)

      fastix®

  2. Vielen Dank für die Hilfe...habs rausbekommen!

    Hier für die es interessiert das Javascript auf der JSP-Seite:

    <script language="JavaScript" type="text/JavaScript">
    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

    // sends a String ( or XML-Message ) to controllerServlet, async=true
    function sendRequest(location)
    {
        //xmlhttp.open('POST', 'controllerServlet',true);
     xmlhttp.open('POST', '../controllerServlet?action=setLocation&location='+location,true);
        xmlhttp.onreadystatechange=function()
        {
            if (xmlhttp.readyState==4)
            {
                handleXmlResponse( xmlhttp.responseXml );
    //response = XML-Document
       //handleXmlResponse( xmlhttp.responseText );   //response = Text
            }
        }
        xmlhttp.setRequestHeader('Man', 'POST');
        xmlhttp.setRequestHeader('MessageType', 'CALL');
        xmlhttp.setRequestHeader('Content-Type', 'text/xml');
        xmlhttp.setRequestHeader('pragma','no-cache');
        xmlhttp.setRequestHeader('cache-control','no-store, must-revalidate, private');
        xmlhttp.setRequestHeader("Content-length", location.length);
     xmlhttp.send(null);
    }

    function handleXmlResponse( responseXmlDoc )
    {
    // hier passiert nix
    }
    </script>

    Das Servlet verändert dann dementsrechend die Bean.