从sencha touch调用Web服务时出错

时间:2013-02-04 12:01:51

标签: java javascript rest extjs sencha-touch-2

我花了几天时间试图解决这个问题,但没办法。

我想通过我使用senchatouch 2.0创建的网络应用程序向我在java中创建的一个安静的网络服务发出请求。我研究了它以提交请求跨域只有选项是使用“Ext.data.JsonP.request ”。我已经使用了代码示例

Ext.data.JsonP.request({
        url: 'http://free.worldweatheronline.com/feed/weather.ashx',
        callbackKey: 'callback',
        params: {
            key: '23f6a0ab24185952101705',
            q: '94301', // Palo Alto
            format: 'json',
            num_of_days: 5
        },
        callback: function( data ) { console.log("callback" + data);},
        success: function(result, request) {
           console.log("success");
           var weather = result.data.weather;
           this.respuesta = 'The temperature in Palo Alto is <b>' + weather[0].tempMaxF + '° F</b>';
           return 'The temperature in Palo Alto is <b>' + weather[0].tempMaxF + '° F</b>';
        },
        failure: function(response) {
            console.log("failure");
            var json = Ext.decode(response.responseText);
            return 'fail';
        }

    });

这很完美。现在我需要连接到我用java(JAX-RS)创建的RESTful Web服务。这是我的方法:

@GET
@Produces("application/json")
public String getJson(@QueryParam("texto") String cadenaTxt) {
    System.out.println(" -----request in getJson:"+ cadenaTxt + "-----");
    String json1 = "{'name:'George Koch', 'age':58}";
    String jsonPoutput = "callback("+ json1 + ");";
    return jsonPoutput;
}

发出网络服务请求的JavaScript代码是:

Ext.data.JsonP.request({
        url: 'http://localhost:8080/proxySimplext/webresources/simplificar',
        callbackKey: 'callback',
        params: {
            format: 'json',
            texto: 'texto que envio'
        },
        callback: function( data ) { 
            console.log("callback" + data);
        },
        success: function(result, request) {
           console.log("success");
           return 'Sucesss';
        },
        failure: function(response) {
            console.log("failure");
            var json = Ext.decode(response.responseText);
            console.log('Fallo de conexion:' + json);
            return 'failure';
        }

    });

不工作。

该请求来自Web服务,但跳过了JavaScript代码超时。我尝试了很多解决方案,但没有办法解决它。

控制台上的响应是:

Uncaught SyntaxError: Unexpected identifier 
failure Utils.js:105
Fallo de conexion:undefined

会发生什么?欢迎任何想法给我

非常感谢!!

0 个答案:

没有答案