WEBサービスを利用してphpを起動させたい – プログラミング – Home

WEBサービスを利用してphpを起動さ...
 
通知
すべてクリア

[解決済] WEBサービスを利用してphpを起動させたい


りお
 りお
(@りお)
ゲスト
結合: 18年前
投稿: 4
Topic starter  

はじめまして。りおと申します。<br/ ><br/ >現在、メインのphpプログラムから各phpのプログラムをSOAPを用いて<br/ >処理を行うシステムの開発を行っております。<br/ ><br/ >ところが各phpのプログラムがそれぞれ時間がかかるため、マルチスレッド<br/ >を用いて処理時間を短縮したいと考えております。<br/ ><br/ >マルチスレッドを用いるにあたり、.NET(VC#)へメインプログラムを<br/ >書き換えたいのですが、、、<br/ >VisualStudio2005(言語Visual C#)からSOAPを用いてPHPプログラムを<br/ >起動する実装方法が良く分かりません。<br/ ><br/ >すいませんが、どのようにすればよいのか教えていただけますでしょうか。<br/ >宜しくお願いします。<br/ >

 

This topic was modified 5年前 by ららら

引用未解決
トピックタグ
PHP
たけ
 たけ
(@たけ)
ゲスト
結合: 24年前
投稿: 116
 

PHPで作成されたWebサービスが既に作成されていて
それをC#から呼びたいんですよね?

Web参照の追加で、作成したWebサービスを指定してあげればよいかな。


返信引用
りお
 りお
(@りお)
ゲスト
結合: 18年前
投稿: 4
Topic starter  

たけさんコメントありがとうございます。

Web参照の追加からURL欄にphpファイルの場所を入力すると
「ページが見つかりません」のページが表示され、
このURLで見つかったWebサービスの欄には下記のような
メッセージが表示されました。

-----------------------------------------------------
http://localhost/test/test.ph p' をダウンロード中にエラーが発生しました。

要求は以下のエラーにより失敗しました。
--
<?xml version=1.0 encoding=UTF-8?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV= http://schemas.xmlsoap.org/soap/envelope/>
<SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Bad Request. Can't find HT
-----------------------------------------------------

どうやら現在はWSDLを使用しない方法(非WSDLモードです)のため、
「Webサービスは作成されていない」という状態だと思います。。

調べていると、WSDLを作ればよいのかな?とは思うのですが、
WSDLの作り方も分かりません。

どうしたら先へ進めるでしょうか…


返信引用
たけ
 たけ
(@たけ)
ゲスト
結合: 24年前
投稿: 116
 

そのままだと難しそうですね~。

WSDLを手書きで書いてしまうか。↓等を参考に。
http://www.atmarkit.co.jp/fxml/tanpatsu/21websvc/websvc04.html

あるいは、.NETで自動で作成されるプロキシクラスを解読するかですかね。
(.NETで雛形で「XML Webサービス」を選ぶと、Helloなんとかが作成されます。
 これをWeb参照の追加すると、プロキシクラスができます)


返信引用
りお
 りお
(@りお)
ゲスト
結合: 18年前
投稿: 4
Topic starter  

たけさんありがとうございます。

WSDLの手書きか、プロキシクラスの解読を行うかのどちらかですね。

参考ページを読んで勉強します。
実装方法が分かりましたので、この質問は解決としますね。

実現するまでは時間がかかりそうですので、また分からなくなって
質問するかも知れませんが、宜しくお願いします。

ありがとうございました☆


返信引用
りお
 りお
(@りお)
ゲスト
結合: 18年前
投稿: 4
Topic starter  

すいません。また質問させてください。
こうして質問を続けていいのか分かりませんが・・・

http://www.phppro.jp/phptips/archives/vol33/#2
上記サイトでWSDLの自動生成が出来るような説明がありました。

-----------------------------------
PEAR::SOAPはまだベータ版なので
pear install soap-beta
でインストールすることが出来ます。
-----------------------------------

とあるのですが、PEARをインストールして、コマンドを叩いても

-----------------------------------
No releases available for package pear.php.net/soap
Cannot initialize 'channel://pear.php.net/soap-beta', invalid or missing
package file
Package channel://pear.php.net/soap-beta is not valid
install failed
-----------------------------------

というエラーになります。
どうしたらインストール出きるのでしょうか。

宜しくお願いします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました