JavaでXML-RPCを使うには
Java での XML-RPC の使い方の内容は参考になりますが、多少古い&足りないので補完記事を書いてみます。
上記の記事で使われているライブラリ「helma.xmlrpc.*」はApache XML-RPCに移動しました。「import helma.xmlrpc.*;」の代わりに「import org.apache.xmlrpc.*;」を使う必要があります。
新しいライブラリはApache Download Mirrors - The Apache Software Foundationから近いミラー(日本人ならhttp://www.meisei-u.ac.jpかな?)を選んでダウンロードします。このときに、間違えてバージョン3をダウンロードするとあるはずのメソッドがなくて悩みます。xmlrpc-current-bin.tar.gzではなく、binaryディレクトリのxmlrpc-2.0.zipをダウンロードするとよいと思います。
また、Codec - Commons Codecも必要です。The Jakarta Site - Commons Codec Downloadsから最新のバイナリをダウンロードします。
上記二つのライブラリを解凍し、適当な場所において、Eclipseのビルドパスの設定で「外部JARの追加」をします。(もしEclipseを使っているのなら)
そうすると後はJava での XML-RPC の使い方を参考にWebServerインスタンスを作り、それに適当なクラスのインスタンスをハンドラとして渡してやれば、XML-RPCでそのクラスのpublicメソッドを呼べるようになります。ただし、WebServerインスタンスのstartメソッドを呼んでサーバを開始するのを忘れないように。
WinXPユーザーなら、自作のXML-RPCサーバが最初に起動したときにWindowsファイヤーウォール(か自分で入れたファイヤーウォール)が警告画面を出すかと思います。
また、ソフトウェアの終了時にサーバのshutdownメソッドを呼ばないと、ウィンドウは消えたままサーバだけ動き続けることもあります。次回起動時に「使おうとしたポートが開いていない」とエラーになってしまうので気をつけてshutdownしましょう。