nDiki : 2004年08月29日

2004年8月29日 (日)

過去の今ごろ

過去の8月29日より。

  • PPMパッケージリポジトリ
    • さすがに SOAPサーバ版は立てようとは思わないな。今の自分用Webリポジトリ版についてはサマリファイルを用意した方が効率がいいかも。
スポンサード リンク

m4s 焼肉off

http://www.naney.org/img/2004/U/U2004-08-29-0001.jpg http://www.naney.org/img/2004/U/U2004-08-29-0002.jpg

大岡山牛神にて。真中の排煙用のパイプが会話にはちと邪魔だった。 炭火焼き。 かなーり久しぶりの焼肉。後半はビビンバを延々と食べていた気が。 満腹満足。

メンツは m4sやまだ君、田中丸君、よしだ君。

http://www.naney.org/img/2004/U/U2004-08-29-0005.jpg http://www.naney.org/img/2004/U/U2004-08-29-0004.jpg http://www.naney.org/img/2004/U/U2004-08-29-0003.jpg

XML-RPC - Java クライアントと Perl サーバ

Java プログラムと Perl プログラムとの連携に XML-RPCが使えないか検討。 まずは実験。

Perl

RPC::XMLモジュールを使う。

 #!/usr/bin/perl -w

 use strict;
 use RPC::XML::Server;

 my $server = RPC::XML::Server->new(port => 9876);
 $server->add_method( {name => 'Perl.eval',
                       signature => [ 'struct string' ],
                       code => sub { warn $_[1]; return {value => eval $_[1]}}});
 $server->server_loop;

引数の文字列を eval した結果を文字列で返す危険な手続き。

Java

いろいろライブラリがあり迷う。 Apache XML-RPCが簡単そうなのでまずはこれで。1.2-b1 を使用。

 import java.util.Vector;
 import java.util.Hashtable;
 import java.io.IOException;

 import org.apache.xmlrpc.XmlRpcClient;
 import org.apache.xmlrpc.XmlRpcException;

 public class XMLRPCClient {
   public static void main(String[] args) {
     String url = args[0];
     String methodName ="Perl.eval";
     Vector params = new Vector();
     params.add(args[1]);
     try {
       XmlRpcClient client = new XmlRpcClient(url);
       try {
         //String result = (String)client.execute(methodName, params);
         //System.out.println(result);
         Hashtable result = (Hashtable)client.execute(methodName, params);
         System.out.println(result.get("value"));
       } catch (XmlRpcException ex) {
         System.out.println(ex.getMessage());
       }
     } catch (IOException ex) {
       ex.printStackTrace();
     }
   }
 }

Perl 側でプログラムを起動しておいて実行。

 java -classpath .:xmlrpc-1.2-b1.jar \
   XMLRPCClient http://localhost:9876/ "3 + 5"

8 が出力される。成功。簡単。

[ 8月29日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.112468s / load averages: 1.23, 0.97, 0.76
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker