問題タブ [zend-soap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Zend_Soap_Client を使用したデータの読み取り
私は初めてZend_Soap_Client
です。例として次のコードがあり、その背後にあるものを理解しようとしています。リモートサーバーに接続し、指定されたデータを読み取ることを正しく理解していますか? 最後に、私が理解している限りでは、これらのデータを に保存することになっていますtest.txt
。
このコードを実行しようとしました (必要な証明書を持っています)。問題は、 にデータが保存されないことtest.txt
です。それで、誰かが私にこの技術を説明するか、同様のトピックに関する優れたチュートリアルへのリンクを教えてくれませんか? 特に、必要なデータをローカルの XML ファイルまたは配列に保存する方法に非常に興味があります。
PS 最初に述べたように、私はZend_Soap_Client
関連するテクノロジーに慣れていないため、誤った定義を使用した場合はお詫び申し上げます。
php - Zend_Soap_AutoDiscover が wsdl ファイルを生成しない
Zend_Soap_AutoDiscover
クラスから WSDL ファイルを生成する際に問題があります。
誰かが私が間違っていることを説明できますか?
bootstrap.php には次のメソッドがあります。
そして、ここにbackend.phpクラスがあります
エラーが発生します:
内部サーバーエラー
サーバーで内部エラーまたは構成ミスが発生したため、リクエストを完了できませんでした...
エラーログ:
php - 操作はオブジェクトを受け取りますZendSoapServer
Webサービスを作成していますが、オブジェクトを受け取る操作を追加しましたが、soapクライアントがその属性を認識しません
..。
...。
soapUIを使用して、このオブジェクトを追加するために次のxmlを取得します
クラス属性が認識されないのはなぜですか?
zend-framework - Zend SOAP with Doctrine 2.1 の問題 FLush 、Soap__ 不明なエラー
SOAP クライアントとサーバーを作成し、サンプル クラスを追加しました。これは、メソッドによって検出された教義から結果を返します。ただし、これをオブジェクトの永続化またはフラッシュに変更すると、エラー:
私の石鹸サーバー: (石鹸コントローラー)
電話をかけると、次のようになります。
メッセージ: 不明なエラー
スタックトレース:
私の updateDoc クラスには、標準的な教義の更新があります。
$this->em->getRepository("Application\Entities\Members")->findOneById(23); $userEntity->first_name = "更新されたファーストネーム";
$this->em->persist($userEntity); $this->em->flush(); }
ただし、 my を呼び出すとgetUser()
:
それは石鹸の不明なエラーなしで動作します..
$userEntity->first_name = "更新された名";
エラーなしで動作しますが、明らかに、エンティティを更新しません...そのエンティティにもプライベートプロパティがあります。それが違いを生むかどうかわからない
更新: また、エンティティを現在のものと同じ値で更新すると、機能することに気付きました...たとえば、 lastname = 'alison' 、 $entity->lastname = 'alison' を更新します...それは機能しますが、別の姓に変更しても機能しません..ドクトリンエラーはありません....また、アプリ内の任意のコントローラーまたはモデルで同じ関数を使用してこのエンティティを変更できます
php - Zend_Soap_Server パラメータは順序付けする必要がありますか?
Zend_soap_server の使用中に奇妙な問題が発生しました。
次のようなメソッドがあれば
私のxmlリクエストは次のようになります
param1 が 0 (hello である必要があります) param2 が hello (0 である必要があります) param3 が 2 であることが起こります。
私のリクエストが注文された場合、すべてが機能します
なぜ私がそのような状況にあるのかについて何か考えはありますか? どうすれば修正できますか?
ご支援いただきありがとうございます。私の英語で申し訳ありません。
zend-framework - エンベロープに SOAP ヘッダーがありません (Zend_Soap_Client、wsdl モード)
Zend Soap Client インスタンスで適切な SOAP エンベロープを作成するのに苦労しています。
以下は、WSDL ファイルから生成された予期されるエンベロープのサンプルです。
設定する必要があるプロパティは、ヘッダーの「SourceName」、「CorrelationID」、本文の「Name」です。これが私がやっている方法です:
getLastRequest() の内容は次のとおりです。
そのため、ヘッダーではなく、本文のオブジェクトにのみプロパティを設定しています。理由があればどんなアイデアでも大歓迎です!
php - PHPSoapClientもZend_Soap_clientも何も返しません
私は単純なWebサービスを構築しようとしており、状況を超えて実行しています。何が間違っているのかわからないので、soapサーバーから返された値を取得できません。
indexController内にZend_Soap_ServerとZend_Soap_Clientがあります。
そして、soapサーバーに渡される非常に単純なServiceクラス:
Soap ServerのURLを要求すると、返されるはずのURLが返されます。
しかし、クライアントのテストにアクセスすると、何も出力されません。
たとえば、getMessageメソッドの名前をgetMessagesに変更すると、Zendは例外をスローします。
何が間違っているのかわかりません。
前もって感謝します!
php - 一見ランダムな SoapFault: 有効なメソッドではありません
SOAP ソリューションで問題が発生しています。時々、次のようなエラーが表示されます。
編集 8 か月後 問題の原因は特定できませんでしたが、回避できました。APIから応答を受け取るたびに、SoapFaultをチェックし、別の同じ要求を送信して、2回目に返された回答を使用します.(回答として投稿)
これは、次のような PHP からの呼び出しで発生します。
上記のすべての呼び出しで同じ結果が期待され、同じパラメーターが使用されます (存在する場合)。ほとんどすべての呼び出しで正常に機能しているため、関数と対応する WSDL がそこにあることがわかります。
私が問題だと思ったのは、その機能を持たない古いバージョンをキャッシュすることでした。私はキャッシングを無効にしようとしました:
Zend_SoapClient を使用するときは、すべての呼び出しにランダムなダミー パラメータを追加し、それを無効にします。
誰かが私を何らかの方向に向けるか、何が原因であるかについて直接的な提案をしてくれることを願っています.
私のコードは次のようになります:
「反対側」で私は持っています:
php - Zend Framework 2 SOAP AutoDiscover と複合型
SOAP サーバーを準備し、次のコードを使用して WSDL を生成しています。
しかし、WebService メソッドの 1 つに、次のように、各要素が「MyOtherClass」型である Array 型のパラメーターがあります。
WSDL を生成しようとすると、次のエラーが発生します。
またはこの例外:
コードに次のようなものを追加すると、次のようになります。
次のエラー メッセージが表示されます。
要約すると、質問は次のとおりです: パラメータとして使用される新しいカスタム タイプの WSDL をどのように認識できますか?
ありがとう
php - Zend SOAP サーバー SOAP-ERROR: WSDL の解析: 'X' からロードできませんでした: 外部エンティティ 'X" のロードに失敗しました
Zend Framework 2.2.1 を使用して、PHP で簡単なテスト Web サービスを作成しようとしています。XAMPP v1.8.2-0 を使用しています。インストールされているphpのバージョンは5.4.16です。http://framework.zend.com/manual/2.0/en/user-guide/skeleton-application.htmlにあるスケルトン アプリケーションのチュートリアルに従って、コントローラーが機能するようになりました。
wsdl パスは testws.localhost/album/wsdl または testws.localhost/album?wsdl です。サービスは testws.localhost/album にあります。testws.localhost の代わりに 127.0.0.1 を使用しても違いはありません。
WSDL の URL にアクセスすると、有効な WSDL ファイルのように見えるものが返され、XMLSpy がそれをロード/検証します。ブラウザーでサービスにアクセスすると、上記のエラー応答が返されますが、WSDL を読み込めない理由の詳細は示されません。
生成された WSDL 出力をファイルに保存し、そのパスを使用して、soap リクエスト メソッド内で php でテキストとして生成すると、すべて同じエラーが発生します。'X' からロードできませんでした: 外部エンティティ 'X' をロードできませんでした。WSDL ファイルは、アプリケーション ディレクトリ内の場所から読み取って、エコー アウトできます。
私はこれを解決するために数日を費やし、ここやウェブで同様の質問をたくさん見ましたが、それらはすべて魔法のように解決するか、受け入れられた答えがなく、何も提案されませんでした. コードは以下に含まれています。他の情報が必要な場合はお知らせください。私は zend フレームワーク / php / xampp に比較的慣れていないため、これで完全に停止しました。
AlbumController.php
Soaptest.php
httpd-vhosts.conf で
ホストファイル
wsdl xml