2011-11-28 16 views
2

Javaジェットコードに基づいたTalendコンポーネントを作成し、talendコンポーネントが1つのWebベースの在庫システムからデータを取得したいとします。しかし、問題はそのシステムのAPIがPHPで利用できるので、私はそのAPI API関数をjavajetコードで使用したいと考えています。出来ますか?javajetコードでphp api関数を使用することは可能ですか?

+0

ホスト上でPHPコードを実行することはできますか? – Grrbrr404

+0

Talendはperlとjavaのみをサポートしています。そのため私たちはtalendの.perljetと.javajetファイルを作成することができます。したがって、talendのPHPコードを実行することはできません。したがって、javaへのPHPコードの変換方法を探しています。 – vinny

答えて

1

.javajetコードはプレーンなJavaを生成するので、PHPを埋め込むことも、PHPを直接呼び出すこともできません。しかし、生成されたコードでPHPインタープリタをサブプロセスとして呼び出すことによってPHP APIを呼び出すことができます。

Runtime.getRuntime().exec("php myapi.php"). 

を呼び出すことによって、あなたはその後、好ましくは、コマンドライン引数および/または標準入力と標準出力を介して、サブプロセスから/への引数と結果を渡すためのメカニズムを考え出す必要があります。

また、WebサーバーからPHP APIを呼び出すこともできます。つまり、そのWebサーバーにHTTPRequestを発行し、サーバーから取得した応答を解析する必要があります。

関連する問題