Problema no ajax

1 resposta
luuu

estou testando um ajax na minha aplicacao
peguei o exemplo do ajaxtags.sourcefourge.net

so que quando eu rodo a aplicacao
da um erro de scrip dizendo

‘AjaxJspTag’ nao esta definido

como arrumar isso?

vou postar o codigo do jsp e do servlet

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>

<%@ taglib uri="http://ajaxtags.org/tags/ajax" prefix="ajax" %>



<h1>Update Form Field Tag Demo</h1>




<script type="text/javascript">
 /*
  * USER DEFINED FUNCTIONS
  */

function initProgress() {
  Element.addClassName('mph', 'progressMeterLoading');
  $('kph').value = "";
  $('mps').value = "";
}

function resetProgress() {
  Element.removeClassName('mph', 'progressMeterLoading');

  if ($F('kph') != "") {
    // clear error box
    $('errorMsg').innerHTML = "";

    // do cool effect
    new Effect.Highlight('kph');
    new Effect.Highlight('mps');

    // display success message
    Element.show('successMsg');
    setTimeout("Effect.DropOut('successMsg');", 2000);
  }
}

function reportError() {
  if ($F('mph') == "") {
    $('errorMsg').innerHTML = "You must enter a value";
    new Effect.Highlight('mph', {duration:5});
  } else {
    $('errorMsg').innerHTML = "Calculator busted!";
  }
  Element.show('errorMsg');
  setTimeout("Effect.DropOut('errorMsg')", 2500);
}
</script>

<div style="width: 400px;">
<form id="updateForm">
  <fieldset>
    <legend>Velocity Conversion</legend>
    <p>Enter miles per hour and click Calculate</p>

    <label for="mph">Miles/Hour (mph)</label>
    <input type="text" id="mph" />
    <input id="action" type="button" value="Calculate"/>

    <label for="kph">Kilometers/Hour (kph)</label>
    <input type="text" id="kph" />

    <label for="mps">Meters/Second (m/s)</label>
    <input type="text" id="mps" />
  </fieldset>
</form>
</div>
<div id="successMsg" style="display:none;border:1px solid #0e0;background-color:#efe;padding:2px;margin-top:8px;width:300px;font:normal 12px Arial;color:#090">Calculation complete</div>
<div id="errorMsg" style="display:none;border:1px solid #e00;background-color:#fee;padding:2px;margin-top:8px;width:300px;font:normal 12px Arial;color:#900"></div>

<ajax:updateField
  baseUrl="formupdate.view"
  source="mph"
  target="kph,mps"
  action="action"
  parameters="mph={mph}"
  parser="new ResponseXmlParser()"
  preFunction="initProgress"
  postFunction="resetProgress" />
package Ortodens;



import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.ajaxtags.helpers.AjaxXmlBuilder;
import org.ajaxtags.servlets.BaseAjaxServlet;


public class FormUpdateServlet extends BaseAjaxServlet {

  public static final double MPH_TO_KPH = 1.609344;

  public static final double MPH_TO_MPS = 0.44704;


  public String getXmlContent(HttpServletRequest request, HttpServletResponse response) {
    double mph = 0, kph = 0, mps = 0;
    mph = Double.parseDouble(request.getParameter("mph"));

    kph = mph * MPH_TO_KPH;
    mps = mph * MPH_TO_MPS;

    return new AjaxXmlBuilder()
        .addItem("kph", Double.toString(kph))
        .addItem("mps", Double.toString(mps))
        .toString();
  }

}

1 Resposta

A

Falta importar os arquivos js do mesmo projeto:

<script type="text/javascript" src="/js/ajaxtags-1.2-beta2.js"></script>

prototype-1.4.0.js
scriptaculous.js
overlibmws.js
ajaxtags-1.2-beta2.js

Tem mais alguns na pasta js do projeto, dependendo que qual tag vc vai usar…

Criado 10 de novembro de 2006
Ultima resposta 24 de jan. de 2007
Respostas 1
Participantes 2