drsmachado 8 de jun. de 2011
E qual o erro que acusa?
Qual a estrutura de diretórios?
silvio.cavalheri 8 de jun. de 2011
Não acusa erro. Simplesmente não acontece nada.
Estou utilizando VS2010 para criar a página HTML5 + jQueryMobile + jQuery + Servlet para tratar as informações (banco de dados) .
Sou iniciante neste assunto, mas a página e a servlet estão Ok!.
Não entendi a pergunta sobre a estrutura de diretórios.
Ai vai o web.xml da servlet:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>servletHTTP</servlet-name>
<servlet-class>servletHTTP</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servletHTTP</servlet-name>
<url-pattern>/servletHTTP</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
drsmachado 8 de jun. de 2011
E tentando o bom e velho Teste
silvio.cavalheri 8 de jun. de 2011
Assim chamou a página:
Clique aqui e veja
A servlet está assim:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//processRequest(request, response);
response.setContentType("text/html");
PrintWriter out = response.getWriter();
//pega parâmetros
String matricula = null;
String nome = null;
String email = null;
matricula = request.getParameter("matricula");
nome = request.getParameter("nome");
email = request.getParameter("email");
out.println("Olá jQuery, eu sou a Servlet!!!");
out.close();
processRequest(request, response);
}
drsmachado 8 de jun. de 2011
Assim vai chamar, o que eu perguntei é a chamada sem passar o caminho completo.
<a href= "/sei_la_qual_o_nome_da_servlet" > SEM HTTP://LOCALHOST</a>
E, perceba como você colocou a url-pattern e como colocou a chamada na função jQuery (não tem coisa demais na função?).
Sei lá, amigo, acho que você está errando coisa pouca aí…
silvio.cavalheri 8 de jun. de 2011
Sem o caminho completo não chama.
neste endereço tem uma explicação que vai de encontro com o que você pensa:
http://javafree.uol.com.br/topic-880850-como-faco-pra-chamar-o-meu-servlet-por-post-do-jQuery.html
Não sei o que pode ser, segui o exemplo e não chama.
Vou continuar estudando.
Outra coisa, usando da forma abaixo, funciona:
<form name="form1" id="form1" action="http://localhost:8080/servletHTTP/servletHTTP" method="post">
<div data-role="fieldcontain">
<label for="name">Matrícula</label>
<input type="number" name="matricula" id="matricula" value="" />
</div>
<div data-role="fieldcontain">
<label for="name">Nome</label>
<input type="text" name="nome" id="nome" value="" />
</div>
<div data-role="fieldcontain">
<label for="name">email</label>
<input type="text" name="email" id="email" value="" />
</div>
<div data-role="fieldcontain">
<button type="submit" id="a" data-theme="c">Calcula</button>
</div>
</form>
silvio.cavalheri 8 de jun. de 2011
utilizando a IDE NetBeans para criar o HTML funcionou utilizando o caminho completo:
$.post("http://localhost:8080/servletHTTP/servletHTTP", { matricula: matriculaPost, nome: nomePost, email: emailPost },
function (data) {
$("#resposta").html(data);
}
, "html");
Mas utilizando o VS2010 para construir o HTML, não funciona de jeito nenhum de várias formas:
“http://localhost:8080/servletHTTP/servletHTTP ”,
“servletHTTP/servletHTTP”
“servletHTTP/”
para mim ficou bom,
mas se alguém puder me ajudar para funcionar no VS2010. É só para não ficar com dúvidas.
Obrigado pela força.