部署了一个需要提供身份凭证的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;这个代码调用失败
解决方案 »
- start called in state 1 报这个错。 以下是代码
- SQLite3 存储 float小数点后4位
- Android模拟器的webview问题,折磨了好几天了,求助大侠们啊。。
- 关于用NDK编译C
- 关于播放器的问题
- 你们的APK测试,手机厂商的测试都是手工测试么?
- <Android导航菜单横向左右滑动并和下方的控件实现联动>---之数据加载
- Android初学者
- 请问怎么及时更新用户头像
- Retrofit2.0与RxJava2.0结合出现的问题解决
- 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;