jsonp跨域访问Struts2后台,获取到的数据没有用callback参数包裹是怎么回事啊?

前端代码:

 $.ajax({
            url:'http://localhost:8080/OA/json/json.action?orgid=aaa&code=00002',
            dataType:'jsonp',
            type:"GET",
            dataFilter:function(json,me){
                alert("dataFiter:"+json);
            },
            contentType : "application/json-rpc",
            jsonpCallback : "call",
            success : function(response,status,xhr){
                alert(response);
            },
            error : function(xhr,errText,errStatus){
                alert("error");
            }
        });

后台配置:

 <package name="json" namespace="/json" extends="json-default">
        <action name="json" class="jsonTest" method="shareInfo">
            <interceptor-ref name="json"></interceptor-ref>
            <result type ="json" name="success">
                <param name="noCache">true</param>
                <param name="contentType">text/html</param>
            </result>
        </action>
    </package>

老是提示:Uncaught SyntaxError: Unexpected token :

从network中看到的response数据是json格式的,在线解析也成功了。

jsonp (String) : 在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。

你配置的回调函数名称配置错了,是jsonp,不是jsonpCallback
jsonpCallback : "call",
==>
jsonp : "call",

java就不懂了,jsonp你一定要获取到回调函数名称后输出类型 回调函数名称(数据),其他格式会出错