Versão atual:

Usar AJAX com web services JAVA

Boa tarde , eu criei um projeto Java web que cadastra uma pessoa , minha ideia é usar ajax para tal (com jQuery no front-end e Java no hack-end) ,até ai tudo bem quando rodo o projeto no NetBeans ele roda que é uma maravilha com o Tomcat que já vem com ele , mas quando faço o deploy da aplicação no servidor de produção ele da a seguinte mensagem : italico[Error] XMLHttpRequest cannot load http://localhost:8084/testeTomcat/webresources/recurso/cadastro/yoda. Origin http://localhost:8089 is not allowed by Access-Control-Allow-Origin. (testeTomcat, line 0)italico

Meu script que faz a requisição é :

$("#btn").on('click' , function (event){
    event.preventDefault();
    var nome = $("#nome").val();
    $.ajax({
        type: 'POST' , 
        url: "http://localhost:8084/testeTomcat/webresources/recurso/cadastro/" + nome , 
        success: function (data, textStatus, jqXHR) {
            $.ajax({
                type: 'GET' , 
                dataType: 'json' , 
                url: "http://localhost:8084/testeTomcat/webresources/recurso/pega" ,
                success: function (data, textStatus, jqXHR) {
                    for(var c = 0 ; c < data.length ; c++){
                        $("#lista").append('<label>' + data[c].nome + '</label><br>');
                    }
                } , 
                error: function (jqXHR, textStatus, errorThrown) {
                    alert("deu bad");
                }
            });
        }
    });
});

E minha classe que disponibiliza o recurso é :

package webServices;

import beans.Pessoa;
import com.google.gson.Gson;
import dao.PessoaDAO;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.UriInfo;
import javax.ws.rs.PathParam;
import javax.ws.rs.Consumes;
import javax.ws.rs.Produces;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PUT;

/**
 * REST Web Service
 *
 * @author joaofelipelopes
 */
@Path("recurso")
public class Recurso {

    @Context
    private UriInfo context;

    /**
     * Creates a new instance of Recurso
     */
    public Recurso() {
    }

    /**
     * Retrieves representation of an instance of webServices.Recurso
     * @return an instance of java.lang.String
     */
    @GET
    @Path("pega")
    @Produces("application/json")
    public String getJson() {
        Gson gson = new Gson();
        return gson.toJson(new PessoaDAO().lista());
    }

    @POST
    @Path("cadastro/{nome}")
    @Consumes("application/json")
    public void cadastra(@PathParam("nome") String nome){
        Pessoa p = new Pessoa();
        p.setNome(nome);
        PessoaDAO dao = new PessoaDAO();
        dao.cadastra(p);
    }

}

Versão(1):

Ver a versão formatada

Usar AJAX com web services JAVA

Comentário

new question