Menu

Categories

My Profile:

July 6, 2007:
ここは日々のメモだらけ。
胡散臭いプロフィールはすぐ下から。

Read more...

Links:

Version: 1.0
(July 25, 2005)

php-java-bridge source forge

Dec 11, 2007 by maru |
http://php-java-bridge.sourceforge.net/pjb/index.php

以下、4.3.2についてのことをつらつら書いていますが、
php-java-bridge_3.2.1のほうがいいかもしれません。orz....
理由はドキュメントがそこそこそろっているから。

その場合は参考にするのは、http://www.dsl.uow.edu.au/~sk33/php5java.htm
ここがよいです。

-----

WindowsXP Apache2.0.61 php5.1.6 で試しました。

なんかインストールすげー簡単。
php-java-bridge_3.2.1 のインストールドキュメントはいろいろあったんだけど、
(http://www.dsl.uow.edu.au/~sk33/php5java.htm とか)

php-java-bridge_4.3.2だとインストールのドキュメントがみつからず。
少し涙が出そうになってたんですが。
なんだか apacheのモジュールとかは必要なくなったらしい。
うまく説明できないけど、手順としてはしたの通り。

JavaBridge.warの中に入ってる、以下の二つを抜き出して、
java/Java.inc …(1
WEB-INF/lib/JavaBridge.jar …(2

…(2は
どこか適当に。 C:/php/ext/JavaBridge.jar
に配置、

…(1 はApacheのドキュメントルートに。

そして、コマンドプロンプトで、
java -jar JavaBridge.jar SERVLET:8080

これでもう待ち状態。

あとは、
どこかDocumentRootに
test.php として、以下を張り付け。
require_once("http://localhost:8080/JavaBridge/java/Java.inc");
$string = new Java("java.lang.String", "HelloWorld");
echo $string;
?>

そうすると、HelloWorldと表示されちゃいます。

そこでですよ。
…(1のファイルは何の意味があるの?と思った人。
はーい。おれ。
test.php を以下に書き換えたら動くカナと思ったら。
require_once("Java.inc");
$string = new Java("java.lang.String", "HelloWorld");
echo $string;
?>

動いた。。。
なんだこれ?

とおもって、
たちあげた、javaのプロセスをぶっ殺してみたら、
動かなくなった。

なんか中の仕組みはよくわかってないが…。
とりあえず動いた。

次は、自作のjarを読み込む方法を模索中。
いまだわからず…。
java -classpath %CLASSPATH% -jar JavaBridge.jar SERVLET:8080 で動くカナと思ったんだけどな。
動かないや。
# 素直に3系でやろうかな…。

ならばphp側でということで、実行したいクラスが入ってるjarファイルを 以下のように読んでやれば、
NEWすることができた!

java_require("C:/Program Files/Java/jdk1.5.0_06/jre/lib/ext/my-library.jar;C:/Program Files/Java/jdk1.5.0_06/jre/lib/ext/my-library2.jar");

本番では、Tomcatも連携して動いているはずなので、
そこと動兼ね合いをつけつつ動かすのかが少し謎だが、、、。

といいつつ、多分J2EEの受付ポートとは違うポートで待ち受ければ、
何の問題もないんだろうが。


ついでに、http://localhost:8080/JavaBridge/java/Java.incでアクセスしたら、
5.1.4より小さいのVersionのPHPでは、Legacy(php-java-bridge_3.2.1)を使えとのこと。

おれっち5.1.6だからいいよね?
LinuxではCentOS5を使おうと思ってるんだけど。
CentOS5ってphpのバージョンいくつなんだろう。
Winでもあわせておいたほうがいいかな。

なんか複数のサイトを、同じPC上で作っているので、
なかなか環境をあわすのが大変です。

Comments

No comments yet

Add Comment