2012-03-12 10 views
2

小さなウェブログサービスで投稿を管理するのにApache XMLRPCを使用しようとしています。サポートはそれほど大きくなく、彼らは本当に助けることができません。彼らはウェブログがmetaweblog apiをサポートしていると言います。私は、RPC "metaWeblog.getPost"を使用してすべての私の記事を取得しようとしているエラー応答XMLRPC

:私は123(無引用符)を使用しない場合

token = client.invoke("metaWeblog.getPost", new Object[] {123, // also tried "123" and "\"123\"" 
                  "username", 
                  "password"}); 

、私はこの応答を取得:のjava.lang.Exception:java.langで。整数をjava.lang.Stringにキャストすることはできません

"123"または "\" 123 \ ""(引用符)を使用すると、次の応答が返されます。java.lang.Exception:無効なpostid形式:123

このコードはWordpressのウェブログで動作します。

答えて

1

おそらく、WordPressはPHPにあり、javaと同じように型が分からないため動作します。

metaWeblogためのドキュメントは、要求の生のXML表現は、このようになっていることを言う:だからあなたはpostIdをする必要が右のタイプ

の変数としてのparamsを確立しようとする必要が

<?xml version="1.0"?> 

<methodCall> 

    <methodName>metaWeblog.getPost</methodName> 

    <params> 

     <param> 

      <value><i4>1829</i4></value> 

      </param> 

     <param> 

      <value>Bull Mancuso</value> 

      </param> 

     <param> 

      <value><base64>bm93YXk=</base64></value> 

      </param> 

     </params> 

    </methodCall> 

32ビッグ整数で、パスワードはbase64でエンコードされ、ユーザー名は文字列です。

変数を適切に宣言し、引用された定数ではなく変数を呼び出しメソッドに渡します。

次に、RPCライブラリによってフードの下に形成されているXMLは<i4></i4>は、郵便番号の周りにあることを確認します、など

が、これは少しお役に立てば幸いです。最低限、相手側がmetaWeblogを適切に実装していないことを証明できます。せいぜい、あなたはあなたの問題を解決し続けています。

+0

Thx thats正しい音、私はそれをテストします。 xmlがどんなフォーマットであるべきかを示すmetaweblogドキュメントへのリンクがありますか? – BigJ

+0

私はこの参照を見ていました:http://xmlrpc.scripting.com/metaWeblogApi.html –

+0

私の答えを投票していただければ幸いです。前もって感謝します。 –

関連する問題