2

gwtwiki Java ライブラリを使用してプライベート wiki (Mint Linux の MediaWiki 1.19.5) とやり取りしようとしていますが、新しい wiki ページを作成するのに苦労しています。

wiki は正常に動作し、既存のページに接続して編集することはできますが、作成は次のエラーで失敗します。

info.bliki.api.UnexpectedAnswerException: The specified page was not found

私のコード:

Connector connection = new Connector();

User user = new User("username", "password", "http://xxxx/mediawiki/api.php");

connection.login(user);

StringBuilder page = new StringBuilder();

page.append("== Test page ==\r\n");
page.append("Some page text");

String title = Encoder.encodeTitleToUrl("Test page",  true);

Edit newPage = Edit.create()
                   .title(title)
                   .text(page.toString());

try {
    connection.edit(user, newPage);
} catch (UnexpectedAnswerException e) {
    e.printStackTrace();
}

(コマンドが発行される前にquerynull を返すように、問題はライブラリにあるようです。行はConnector.javaのメソッドにあります。pageideditedit(....)

if (pages != null && pages.size() == 1 && pages.get(0).getPageid() != null) {
...

デバッガーを使用して null pageid チェックを強制的に渡すと、ページの作成が成功します。

それで、私は何を間違っていますか?gwtwiki はページ作成をサポートしていますか? もしそうなら、どうすればいいですか?

4

1 に答える 1