部署了一个需要提供身份凭证的webservice,在.net 中。可以通过NetworkCredential(用户名, 密码)提交身份验证,调用无误。现在,想在android中调用这个webservice,用 usernameToken,失败,请问,该如何在ksoap2中提交身份凭证啊?我的代码如下:
Element usernameElement = new Element().createElement(OASIS_SECURITY_XSD_URL, "user name");
usernameElement.addChild(Node.TEXT, "test1");
Element passwordElement = new Element().createElement(OASIS_SECURITY_XSD_URL,"password");
passwordElement.addChild(Node.TEXT, "test1");
Element usernameTokenElement = new Element().createElement(OASIS_SECURITY_XSD_URL, "NetworkCredential");
usernameTokenElement.addChild(Node.ELEMENT, usernameElement);
usernameTokenElement.addChild(Node.ELEMENT, passwordElement); Element securityElement = new Element().createElement(OASIS_SECURITY_XSD_URL,"Security");
securityElement.setPrefix(null, OASIS_SECURITY_XSD_URL);
securityElement.addChild(Node.ELEMENT, usernameTokenElement);
Element [] s = {securityElement};
SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true; //.net 支持
envelope.headerOut =s;这个代码调用失败
Element usernameElement = new Element().createElement(OASIS_SECURITY_XSD_URL, "user name");
usernameElement.addChild(Node.TEXT, "test1");
Element passwordElement = new Element().createElement(OASIS_SECURITY_XSD_URL,"password");
passwordElement.addChild(Node.TEXT, "test1");
Element usernameTokenElement = new Element().createElement(OASIS_SECURITY_XSD_URL, "NetworkCredential");
usernameTokenElement.addChild(Node.ELEMENT, usernameElement);
usernameTokenElement.addChild(Node.ELEMENT, passwordElement); Element securityElement = new Element().createElement(OASIS_SECURITY_XSD_URL,"Security");
securityElement.setPrefix(null, OASIS_SECURITY_XSD_URL);
securityElement.addChild(Node.ELEMENT, usernameTokenElement);
Element [] s = {securityElement};
SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true; //.net 支持
envelope.headerOut =s;这个代码调用失败
解决方案 »
- 新老朋友,都来瞧瞧!
- 手机通过访问浏览器网页 下载 安装 apk的 问题 【谢谢】
- 安卓程序标题栏的问题
- Android主界面修改
- android中的camera的AutoFocusCallback接口
- Handler.sendMessage()被阻塞
- 有关listview中监听button状态,滚动后顺序混乱的问题
- 底部菜单menu旋转。
- Android Studio突发这种编码问题,怎么办
- Android studio 中出现emulation: WARNING: UpdateCheck:Failure: Error 时该怎样解决呢?
- audioManager.setStreamMute(AudioManager.STREAM_VOICE_CALL , true);不起作用
- android apk 无法运行
Element[] header = new Element[1];
header[0] = new Element().createElement(AppConstant.URL.NAMESPACE,"header"); //AuthHeader is the class name of my authentication
header[0].setAttribute(AppConstant.URL.NAMESPACE,"username","admin");
header[0].setAttribute(AppConstant.URL.NAMESPACE,"password","admin");
envelope.headerOut=header;