1

我在编程方面还不错,所以这对我来说是一个奇怪的...

我正在尝试从 Mantis Bug Tracker 中提取一个值以显示在我的 Android 应用程序上。为此,我使用 kSOAP2 库访问 Mantis 的 SOAP 接口。

我得到的错误是带有这些详细信息的 MalformedURLException

未找到协议:/api/soap/mantisconnect.php

URL 是根据用户输入的 URI 构建的,并在末尾附加了一个字符串:

String fullUrl = HOST + "/api/soap/mantisconnect.php/mc_version?wsdl"; 
trans.call(fullUrl, soapEnvelope);

HOST 成功传入,我通过调试变量看到了这一点,fullUrl 等于:

http://192.168.1.98/mantis/api/soap/mantisconnect.php/mc_version?wsdl

这是从 Eclipse 中 HOST 变量的调试视图中复制出来的。

程序出错的地方是 trans.call(); 其中 trans 是 kSOAP2 库中提供的 HTTPTransportSE 对象。trans 中定义的 URL 是(奇怪?):

/api/soap/mantisconnect.php

所以对我来说,这个问题似乎在于 HttpTransportSE 对象中的解析问题,可以在此处找到扩展 transport.java 的源(我无法放置链接,因为它认为我是垃圾邮件,但你可以在那个 SVN 中找到它) .

通常到这一点,我已经发现了问题并且永远不必点击提交按钮,但我遇到了真正的问题=(。欢迎所有帮助和必要的!

4

1 回答 1

0

您是否在没有HOST变量的情况下尝试过,只是对 URL 进行硬编码?

于 2012-03-05T19:02:15.510 回答