- - PR -
PHPからSVFのVrInitを実行するとエラー(-1)で返ってきます
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-02-01 13:28
初めて投稿させて頂きます。
環境は以下のとおりです。 WindowsXP SP2 Apache 2.0 PHP 5.1.6 JDK 1.5.0_14 java bridge 3.2.1 SVF 6.2 PHPで以下のコードを実行すると、VrInitの戻り値が-1となり、 正常に動作しません。 java_require('http://localhost/test/lib/svf.jar'); $myObj = new Java('jp.co.fit.vfreport.Vrw32'); $int = $myObj->VrInit(); ←ここで$intに-1が返ってくる SVFのマニュアルを読んでも、インターネットで検索しても ピンポイントな情報がなく、原因や解決策が見つからない状態です。 どなたかご存知の方がいらっしゃいましたら、お教え願いたいと思います。 よろしくお願いします。 |
|
投稿日時: 2008-02-01 17:35
解決できました。
原因は、PHP.iniで設定していたjava.library.pathに vfreport.propertiesファイルが存在しなかったため、エラーとなっていました。 以下、対策となります。 java.library.path="C:\\PHP\\ext" C:\\PHP\\extフォルダ配下に以下のファイルをコピー svf.jar vfreport.defaults.properties vfreport.EMF.properties vfreport.EMFUI.properties vfreport.EWF.EMF.properties vfreport.PDF.PDF.properties vfreport.PDF.properties vfreport.PDFUI.properties vfreport.printers.properties vfreport.properties 以下、PHPソースコード <html> <head> <title>SVFとりあえず初期化処理</title> </head> <body> <?php java_require('http://localhost/test/lib/svf.jar'); $myObj = new Java('jp.co.fit.vfreport.Vrw32'); // SVF初期化処理 $int = $myObj->VrInit(); if($int < 0) { echo '初期化エラー'; echo '<br>'; echo 'エラーコード:'.$int; } else { echo '初期化成功'; } echo '<br>'; $int = $myObj->VrQuit(); if($int < 0) { echo '終了エラー'; echo '<br>'; echo 'エラーコード:'.$int; } else { echo '終了成功'; } ?> </body> </html> |
1