gpt4 book ai didi

java - 代号一网络服务 SOAP 调用不起作用

转载 作者:行者123 更新时间:2023-11-30 07:34:35 24 4
gpt4 key购买 nike

我想在单击登录按钮时使用基于 SOAP 的 Web 服务。我的代码如下

loginButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
Log.p(" CaterId : "+catererId.getText());
Log.p(" Username : "+loginId.getText());
Log.p(" Password : "+password.getText());

final String InputParameter = "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\" xmlns:tem=\"http://tempuri.org/\">"
+" <soap:Header/>"
+" <soap:Body>"
+" <tem:AuthenticateSupervisor>"
+" <tem:username>TestAbhi</tem:username>"
+" <tem:password>TestAbhi</tem:password>"
+" <tem:caterer>calihanint</tem:caterer>"
+" </tem:AuthenticateSupervisor>"
+" </soap:Body>"
+"</soap:Envelope>";
ConnectionRequest r= new ConnectionRequest() {

@Override
protected void buildRequestBody(OutputStream os) throws IOException {
os.write(InputParameter.getBytes("UTF-8"));
}

@Override
protected void postResponse() {
//super.postResponse();
}

@Override
protected void readResponse(InputStream input) throws IOException {
//super.readResponse(input);
XMLParser parser = new XMLParser();
Element elem = parser.parse(new InputStreamReader(input));
Log.p(" Came heer"+elem);
}
};
r.setUrl("http://192.168.10.224:8888/CXPPostScheduleService/Service.asmx");
r.setPost(false);
/*r.addArgument("username", "TestAbhi");
r.addArgument("password", "TestAbhi");
r.addArgument("caterer", "calihanint");*/
r.setContentType("application/soap+xml;charset=UTF-8");
NetworkManager.getInstance().addToQueueAndWait(r);
r.getResponseData();
}
});

它显示一个 html 文件作为响应。您能帮我检查一下我在这段代码中做错了什么吗?

最佳答案

我假设您需要尝试发布请求:

r.setPost(true);

如果您从设备调用此命令,请确保设备与服务器位于同一网络中,否则 NAT 本地地址将无法访问。请注意,如果服务器托管在其他地方而不是在您的计算机上,这也适用于模拟器。

我还建议检查服务器日志、错误响应代码并发布错误 HTML。您可以使用模拟器中的网络监控工具来进一步调试。

关于java - 代号一网络服务 SOAP 调用不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35575834/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com