不是4.0是2.2的 前面代码都运行正常 当运行到获取服务器响应字符串的时候 我定义了一个result的字符串来接受它 按照常理来说返回的是这个字符串 可是现在直接返回空了
追答systemt.out.println()打印的是空么? 如果是空的说明你服务器端返回的就没有数据或者url地址写错了,服务的代码是什么我看看?另外你的intent的访问权限给了么
追问不是空不是空 返回的是一个JSP页面文件 访问权限我也在AndroidManifest.xml文件中配置了 我给你看见返回的内容
吧你LoginActivity 的76到97行给我发来看看 问题出在这个地方貌似。
追问79是个方法 把这个方法发来啊?
追问这是query那个方法
有点晕了,你访问的JSP页面返回啦的是个页面信息,我怀疑你怎么取的值啊?你有没有解析你返回的数据。你new JSONObject(......)的时候没报错 么 按说你返回的不是json格式的数据应该报jsonexception的啊。你自己也看到了你返回来的数据是个xml格式的你怎么转换成json的。
追问我直接取JSP页面里的表name的属性值啊 我发现有个地方我写错了 map.put("userName",name); 这里面这个userName就是jsp页面里的表单name 应该是这么写 map.put("user.userName",name); 我试试这样写行不行
追答无语你map都不明白啊map.put(String key,String value);这个key是个名字随便起的 啊只要你取的时候根据你起的名字取后面的value值的所有你起什么都一样。取值的时候get和put保持名字一样就可以的。你用的userName 不会当成你表单的名字的。加了双引号就是个字符串了不会是变量,这你都没弄明白啊。
追问我知道啊 键值么不就是 理解错了 那咋办错误在哪里
追答你服务器端返回的应该是个验证账号密码后的正确或者错误信息,你要实现登录功能应该在服务器写一个servlet来响应客户端发送的请求,返回用一个printWriter写个输出流最好写个json格式的字符串,然后你客户端才能解析。你现在的代码真让我头晕。你LoginActivity96行的json.getInt("user")>0这句错了,你感觉你能getInt(”user“)么。你返回的就不是个json数据你用json去取user肯定错了。
本回答被提问者采纳我之前是做J2EE的 刚接触android 我上面已经把报错的日志贴出来了你帮我看看吧