使用gwtwiki加载wiki页面和内容

时间:2014-09-09 10:32:18

标签: java android mediawiki-api bliki

为了开发显示我自己的wiki(mediawiki)内容的android应用程序,我想使用gwtwiki或bliki。

我尝试了很多内容或页面,但没有做任何事情。

以下是我完成的测试之一:

public void readContent() {
    String[] listOfTitleStrings = { "Main Page", "API" };
    User user = new User("", "", "http://192.168.0.2/mediawiki/api.php");
    user.login();
    List<Page> listOfPages = user.queryCategories(listOfTitleStrings);

    Toast.makeText(getActivity(), "Pages size: " + listOfPages.size(), Toast.LENGTH_LONG).show();

    for (Page page : listOfPages) {
        for (int j = 0; j < page.sizeOfCategoryList(); j++) {
            Category cat = page.getCategory(j);
            Toast.makeText(getActivity(), cat.toString(), Toast.LENGTH_LONG).show();
        }
    }
}

对于此示例,页面大小为0.我使用了user.getContent(listOfTitleStrings);但没有再发生任何事情。

我如何使用gwtwiki? 我必须通过HTML GET命令读取页面并从响应内容中获取XML然后显示它吗?或者gwtwiki自己做吗?

1 个答案:

答案 0 :(得分:0)

正如我通过调试我的应用程序所得出的那样,gwtwikibliki在android平台上读取XML时出错。

我制作了新的 Android项目并将其更改为图书馆。然后我将bliki的核心部分和资源文件夹复制到它而不重命名。然后它在我的应用程序中用作库。所以我在运行我的应用程序时遇到了一些错误,例如AbstractXMLParser类的构造函数上的XML Parser实例化错误。

我在AbstractXMLParser类的构造函数上更改了代码并且运行良好:

fXMLReader = SAXParserFactory.newInstance().newSAXParser().getXMLReader();

而不是:

fXMLReader = XMLReaderFactory.createXMLReader();