jquery 如何调用java写的webservice

lijing19860904 2011-10-08 07:43:10
求大神们 帮帮忙,请问前端用jquery如何调用 java写的webservice接口。

为什么调用不成功,前端调用方法:

            $.ajax({  
url: "http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime",
type: "POST",
dataType: "json",
data: "",
beforeSend: function(x) {
x.setRequestHeader("Content-Type", "application/json; charset=utf-8");
},
success: function(json) {
alert(json.d);

},
error: function(x, e) {
alert(11)
alert(x.responseText);
},
complete: function(x) {
alert(22)
alert(x.responseText);
}
});



webservice方法:
public interface ITestSerivce {

public String example(String message);

public String showTime();

}



public class TestSerivceImpl implements ITestSerivce {

public String example(String message) {
return "hello worlds!";
}

public String showTime() {
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String time = sdf.format(new java.util.Date());
return time;
}

}



大家这样写过没有,网上查资料ajax都是调用.net的webservice,如何调用java写的。大神们帮帮忙。小弟万分感谢!!!
...全文
1266 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
syn1230 2014-04-15
  • 打赏
  • 举报
回复
楼主我也遇到了相同的问题,能指点一下吗
hexin20117 2013-05-30
  • 打赏
  • 举报
回复
这是我写的客户端,服务端那边不是我写的,不是很清楚,ajax返回的是jsnop,不是jsno把 //从服务端获取数据 function insertMuInfo(){ var serveraddress="http://"+ip+":"+port+"/MU/MUQUERY.action"; $.ajax({ type: "get", async: false, cache:false, url: serveraddress, dataType: "jsonp", jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback) success:callback, error: function(){ alert('fail'); } }); } //回调函数,插入本地 function callback(data){ console.log($(data.muinfos).length); if($(data.muinfos).length>0){ for(i=0;i<$(data.muinfos).length;i++){ var STATUS=$(data.muinfos).get(i).STATUS; var LAST_MODIFY_TIME=$(data.muinfos).get(i).LAST_MODIFY_TIME; var LAST_MODIFIER=$(data.muinfos).get(i).LAST_MODIFIER; var CREATOR=$(data.muinfos).get(i).CREATOR; var CREATE_TIME=$(data.muinfos).get(i).CREATE_TIME; var REMARK=$(data.muinfos).get(i).REMARK; var EAIRPORT=$(data.muinfos).get(i).EAIRPORT; var SAIRPORT=$(data.muinfos).get(i).SAIRPORT; var serviceDate=$(data.muinfos).get(i).FLTDATE; var FLTNO=$(data.muinfos).get(i).FLTNO; dbobj.insert('TB_FLT',{STATUS:STATUS,LAST_MODIFY_TIME:LAST_MODIFY_TIME, LAST_MODIFIER:LAST_MODIFIER,CREATOR:CREATOR,CREATE_TIME:CREATE_TIME,REMARK:REMARK, EAIRPORT:EAIRPORT,SAIRPORT:SAIRPORT,FLTDATE:serviceDate,FLTNO:FLTNO},function(){}); hideLoading(); } }else{ alert("服务器没有前后三天的数据"); } }
hoseli008 2013-05-30
  • 打赏
  • 举报
回复
引用 3 楼 zk1878 的回复:
分两步查看错误原因 1、查看webservice是否可访问 在浏览器输入 http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime 看看服务是否可用 2、查看是不是js调用错误,以致页面没反映 比如 success: function(json) { alert(json.d); } 这里的json.d,可能json.d 未定义,即 typeof json=undefined 或 typeof json.d=undefined(服务器返回的数据格式不对) , 改成 success: function(json) { alert('success'); } 试试,如果仍然没反映那就是其他原因
小帅庾 2013-05-30
  • 打赏
  • 举报
回复
url 是相对路径 你把 url: "http://localhost:8888/TestWebService/。。。。。。。。 修改成 url: "/TestWebService/.........."
小丑哥_V5 2013-05-29
  • 打赏
  • 举报
回复
看看你自己请求的权限,这个路径只要没错,怎么访问都是浮云,你直接负责接收返回的数据而已,跟ajax没多大关系,所以你看看这个接口是不是需要权限,或者是你的ajax写错语法了
kongxun 2013-05-29
  • 打赏
  • 举报
回复
LZ你好,我现在也遇到这样的问题,可否share一下解决办法?
chenzz1006 2012-07-17
  • 打赏
  • 举报
回复
楼主,问题解决了吗?什么原因呢?
什么都不能 2011-12-02
  • 打赏
  • 举报
回复
有无用户验证?
zhouyusunquan 2011-12-02
  • 打赏
  • 举报
回复
对,ajax调用本地java,本地java再访问webservice
itcyt123 2011-12-02
  • 打赏
  • 举报
回复
java的利用http协议发布访问的webservice可以用rest webservice,这样在ajax中可以直接调用。
雨天要吃饭 2011-10-14
  • 打赏
  • 举报
回复
没用过的说
Go 旅城通票 2011-10-13
  • 打赏
  • 举报
回复
java的我不知道怎么配置,应为我不是搞java的~帮你移动到java板块去吧。~
lijing19860904 2011-10-13
  • 打赏
  • 举报
回复
对了 我能直接访问wsdl文件

http://localhost:8888/TestWebService/services/TestSerivce?WSDL这个能访问。

这说明服务是启动的。
lijing19860904 2011-10-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 showbo 的回复:]
http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime

你这个地址能访问没?如果不能访问就是你配置不对,未配置webservice可以get或者post访问。
[/Quote]


请问为什么我找到一点相关的资料 ajax调用webservice需要定义soap协议的参数。

是webservice没有配置get和post访问权限吗?


访问http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime
地址提示 Invalid SOAP request.非法的soap请求。。。。

你能不能说的详细点。谢谢!
zk1878 2011-10-10
  • 打赏
  • 举报
回复
分两步查看错误原因
1、查看webservice是否可访问
在浏览器输入 http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime
看看服务是否可用

2、查看是不是js调用错误,以致页面没反映
比如
success: function(json) {
alert(json.d);

}

这里的json.d,可能json.d 未定义,即 typeof json=undefined 或 typeof json.d=undefined(服务器返回的数据格式不对) ,
改成
success: function(json) {
alert('success');

}
试试,如果仍然没反映那就是其他原因
Go 旅城通票 2011-10-10
  • 打赏
  • 举报
回复
http://localhost:8888/TestWebService/services/TestSerivce?WSDL/showTime

你这个地址能访问没?如果不能访问就是你配置不对,未配置webservice可以get或者post访问。
  • 打赏
  • 举报
回复
webservice不分什么写的,只要你提供服务就可以享受

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧