kSOAP2 输出 / org.xmlpull.v1.xmlpullparserexception 预期 start_tag
我有一个标准代码来调用.net webservice
,
我在行中得到Exception“org.xmlpull.v1.xmlpullparserexception Expected start_tag”
transportSE.call(SOAP_ACTION,soapSerializationEnvelope);
但是,如果我从以下位置调用相同的Web服务.NET 代码
我根据需要得到了结构良好的正确输出。
主要看起来,从 kSOAP2
中,它得到了明确的输出,但是当它进一步解析 SoapPrimitive 对象时,它会失败。
那么,是否有其他方法可以查看收到的实际输出(实际肥皂信封),然后可以自己适当地解析它。
I have a standard code to call a .net webservice
I get exception "org.xmlpull.v1.xmlpullparserexception expected start_tag"
at line
transportSE.call(SOAP_ACTION,soapSerializationEnvelope);
However, if i call the same webservice from a .NET code
i get a well structured proper output as desired.
It primarily seems that from kSOAP2
, there is a definite output that it gets but when it goes to parse further w.r.t SoapPrimitive objects, it fails.
So, is there other way to look at the actual output (actual soap envelope) received and then may be parse it myself appropriately.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我正在调查我遇到的类似问题。无意中看到这条评论
http://groups.google.com/group/android-developers/browse_thread /thread/b585862b6e939fd2
也许我们遇到了有关肥皂版本的兼容性问题。另外,连接到 .net 服务时,您可能需要设置
envelope.dotNet = true;
..但您可能已经这样做了I'm investigating a similar problem I'm having. Stumbled across this comment
http://groups.google.com/group/android-developers/browse_thread/thread/b585862b6e939fd2
Perhaps we are having compatibility issues regarding the soap version. Also connecting to a dot net service you may need to set
envelope.dotNet = true;
.. but you've probably done that我收到此 START_TAG 异常,但就我而言,这是因为我的值
不正确。
现在如何找出这些参数的正确值,您可以在此处查看我的其他答案
I was getting this START_TAG Exception but in my case it was because my values for
were not correct.
Now How to find out the correct values of these parameters you can Check out my other answer here
现在我已经解决了我原来的问题,现在就来解决这个问题吧!
我发现 ksoap2 无法解析响应...特别是 org.kxml2.io.KXmlParser.require(type, namespace, name) 抛出以下异常。
请注意 h1 标签。这来自
404 Not Found
...所以是的,请注意您的回复可能来自网站,而不是您的网络服务:)
希望有一天能对某人有所帮助
Well now that I've solved my original problem hit this one!
I found that ksoap2 couldn't parse the response... specifically org.kxml2.io.KXmlParser.require(type, namespace, name) threw the following exception.
Note that h1 tag. That comes from
<h1>404 Not Found</h1>
... so yes, be aware your response may be from a website but not your web service :)Hope that helps someone one day
我遇到了几乎相同的错误,我的例外是“position:START_TAG @2:7”,
但我已经修复了,因为我以错误的方式命名了参数,该名称必须与 XSD 上指定的名称完全相同。
在 addPropery 方法中,我使用了错误的参数名称。
I had almost the same error, my exception was this "position:START_TAG @2:7"
but I've fixed because I was naming in a wrong way a parameter, the name must be exactly as is specified on the XSD.
in the addPropery method I was using a wrong parameter name.
使用下面的代码,通过观察变量
urlc.getResponseCode()
的响应代码来确保 Web 服务的 url 可访问,同时将IP从localhost、fixed、external最后更改为10.0.2.2对我来说,我得到了这个提示“不是下面缺少的字符s”
[错误] 尝试调用服务方法登录时发生异常
org.apache.axis2.AxisFault: 命名空间不匹配需要 http://services.univ.rss 找到 http://service.univ.rss
日志 tomcat 等的其余部分
是的之后跟踪 LogCat 我没有检查 tomcat 服务器日志,如果 SoapUi 成功测试了该服务,您应该监控每次更改测试中的所有日志,我什至一开始忘记启动数据库服务,所以要小心:)
Soap Call
PS 我的数据库是 Oracle并且webservice是soap并使用 axis2-1.2 bin 并且在 Android 4.0 上测试,上述错误响应代码为 500 内部错误
After making sure the url of webservice is reachable by using the below code by watching variable
urlc.getResponseCode()
for response code while altering the ip from localhost ,fixed ,external and finally to 10.0.2.2For me i got this hint "not the missing character s in the below"
[ERROR] Exception occurred while trying to invoke service method login
org.apache.axis2.AxisFault: namespace mismatch require http://services.univ.rss found http://service.univ.rss
The rest of log tomcat etc
And yes after tracing the LogCat i did not check th tomcat server log eve if the service was tested by SoapUi successfully , you should monitor all logs in every change test , i even forgot at first to start the database service so be carefull :)
The Soap Call
P.S My Db Is Oracle and webservice is soap and used axis2-1.2 bin And tested on Android 4.0 the above error response code was 500 Internal Error