起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1457|回复: 2

[处理中3] 自定义action java端调用 .netWebService 前台得不到返回值

[复制链接]

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
QQ
发表于 2017-11-29 11:07:19 | 显示全部楼层 |阅读模式
调用的.net的webservice 然后返回数据
前端js
define(function(require){
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");
       
        var Model = function(){
                this.callParent();
        };

        Model.prototype.loginIsmBtn = function(event) {
                var phoneInput = this.comp("nameInput").val();
                var passwordInput = this.comp("passwordInput").val();
                alert(phoneInput);
                alert(passwordInput);
                var me = this; //将this 存起来,在回调事件中使用
                justep.Baas.sendRequest({
                "url" : "/Test/login", //服务文件路径
                "action" : "getLoginAction", //调用动作的名称
                "async" : true, //异步请求
                "params" : {"UserId" : phoneInput,"Password":passwordInput}, //设置参数
                "success" : function(Data){
                                alert(data);
                        }    //设置执行成功的回调方法 //调用数据组件的loadData 方法装入数据
                });

        };
       
        return Model;
});


bass服务
public static JSONObject getData(JSONObject params,ActionContext context)
                        throws Exception
        {
                JSONObject ret = null;
                // 定义方法  
        String method = "DengLuCheck";  
        
        String UserID = params.getString("UserId");
        String Password = params.getString("Password");
        
        System.out.println(UserID);
        System.out.println(Password);
        // 定义服务  
        Service service = new Service();  
        
        Call call2 = (Call) service.createCall();  
        call2.setTargetEndpointAddress(new java.net.URL(  
                "http://172.0.0.1/WeiXinJK.asmx"));  
        call2.setUseSOAPAction(true);  
        call2.setReturnType(new QName("http://www.w3.org/2001/XMLSchema",  
                "string"));  
        // 第二种设置返回值类型为String的方法  
        call2.setOperationName(new QName("http://tempuri.org/", method));  
        call2.setSOAPActionURI("http://tempuri.org/DengLuCheck");  
        call2.addParameter(new QName("http://tempuri.org/", "UserName"),// 这里的name对应参数名称  
                XMLType.XSD_STRING, ParameterMode.IN);
        call2.addParameter(new QName("http://tempuri.org/", "Password"),// 这里的name对应参数名称  
                XMLType.XSD_STRING, ParameterMode.IN);
        call2.addParameter(new QName("http://tempuri.org/", "yhlx"),// 这里的name对应参数名称  
                XMLType.XSD_STRING, ParameterMode.OUT);
        call2.addParameter(new QName("http://tempuri.org/", "gsbm"),// 这里的name对应参数名称  
                XMLType.XSD_STRING, ParameterMode.OUT);
        String retVal2 = (String) call2  
                .invoke(new Object[] { UserID,Password });  
        System.out.println(retVal2);  
        String returnFinal = "";
        
        if(retVal2==null||retVal2.length()==0)
        {
                returnFinal = "{\"result\":\"success\"}";
        }
        else
        {
                returnFinal = "{\"result\":\""+retVal2+"\"}";
        }
        System.out.println(retVal2.length());
        System.out.println(returnFinal);
        
        ret = JSON.parseObject(returnFinal);
        System.out.println(ret.get("result"));
               
                return ret;
               
        }

调用.net WebService成功的,前台ajax的success的 function也进去了。。但是data一直得不到?
有大神帮忙看一下么?是什么问题?

31

主题

85

帖子

461

积分

中级会员

Rank: 3Rank: 3

积分
461
QQ
发表于 2017-12-4 16:55:15 | 显示全部楼层
Data和data??
回复 支持 反对

使用道具 举报

发表于 2017-12-4 18:13:55 | 显示全部楼层
对啊 注意大小写
Data  是大写!  alert  data是 小写的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-28 22:52 , Processed in 0.055584 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表