私は実行中のWebサービス(JPAプロバイダとしてEclipseLinkを使用しています)を持っており、SOAPを使用してデータベース内のデータを更新するメソッドをPHPから呼び出したいとします。
Webサービスのメソッドのようなものに見えることがあります。PHPからSOAPを使用してPHPからJava Webサービスにオブジェクトを送信するにはどうすればよいですか?
public void updatePerson(Person p){
EntityManagerFactory emf = Persistence.createEntityManagerFactory("PersonLib");
EntityManager em = emf.createEntityManager();
if(!em.getTransaction().isActive()) {
em.getTransaction().begin();
}
em.merge(p);
em.getTransaction().commit();
}
を、私はタイプstdClass
のオブジェクトを作成し、人のためのパラメータとして、それを送信する必要がありますね。私は正しい?私はドント
$client = new SoapClient("url.to.wsdl", array("trace" => 1));
$obj = new stdClass();
$obj->Person = new stdClass();
$obj->Person->personId = 1;
$obj->Person->name = "Peter";
$client->updatePerson($obj);
が、これはPHPからJavaへオブジェクトを送信するための正しい方法であれば(まあ、それは方法updatePerson(人を呼び出します知っている:しかし、私はそれはこれらのコード行で動作し得るドントp)はJavaアプリケーションでは、pは私がPHPで入力したデータを含んでいません)。
WSDLを表示できますか?また、 '' Classmap "'オプションが 'SoapClient'コンストラクタで使われている例[here](http://www.php.net/manual/en/soapclient.soapclient.php)を調べたいかもしれません。 –