0

SOAP Web サービスを介して .net アプリケーションに接続する必要がありますが、Domino から動作させることができません。XPages の使用 Web サービスに接続してデータを xpage に返したいと考えています。電話をかけるエージェントを作成しようとしましたが、うまくいきませんでした。エージェントを実行すると、次の Java StackTrace が表示されます。

WebServiceEngineFault
 faultCode: {http://www.lotus.com/domino/ws/}HTTP
 faultSubcode:
 faultString: (401) Unauthorized
 faultActor:
 faultNode:
 faultDetail:
        {}string:

(401) Unauthorized
        at lotus.domino.axis.transport.http.HTTPSender.readFromSocket(Unknown Source)
        at lotus.domino.axis.transport.http.HTTPSender.invoke(Unknown Source)
        at lotus.domino.axis.strategies.InvocationStrategy.visit(Unknown Source)
        at lotus.domino.axis.SimpleChain.doVisiting(Unknown Source)
        at lotus.domino.axis.SimpleChain.invoke(Unknown Source)
        at lotus.domino.axis.client.AxisClient.invoke(Unknown Source)
        at lotus.domino.axis.client.Call.invokeEngine(Unknown Source)
        at lotus.domino.axis.client.Call.invoke(Unknown Source)
        at lotus.domino.axis.client.Call.invoke(Unknown Source)
        at lotus.domino.axis.client.Call.invoke(Unknown Source)
        at lotus.domino.axis.client.Call.invoke(Unknown Source)
        at lotus.domino.websvc.client.Call.invoke(Unknown Source)
        at com.imanage.worksite.IWOVServicesSoapStub.getFolders(Unknown Source)
        at JavaAgent.NotesMain(Unknown Source)
        at lotus.domino.AgentBase.runNotes(Unknown Source)
        at lotus.domino.NotesThread.run(Unknown Source)

ユーザーID、パスワード、およびドメイン資格情報を渡すsoapUIから正常に呼び出すことができます。

Web サービスを使用するエージェントに資格情報を設定します。

                            String arg0 = "DOMAINNAME\\USERID";
                            String arg1 = "PASSWORD";
                            stub.setCredentials(arg0, arg1);

また、Web サービス コンシューマー自体 (SoapStub クラス内 - getFolders 呼び出し内):

                    _call.setUsername("DOMAINNAME\\USERID");
                    _call.setPassword("PASSWORD");

XPages と Java は初めてです。私が行方不明になっている可能性があるもの、またはチェックする必要があるものはありますか?

(WSDL によって生成された変数名が長すぎるため、Web サービス コンシューマーに Lotusscript を使用することはできません。この場合は Java を使用する必要があります)。

4

2 に答える 2

0

これらの状況では、絞り込みを支援するために、SOAPUIに完全なテストを行わせることをお勧めします。

したがって、次のようにします。

  1. プロバイダーのWSDLからSOAPUIでモックサービスを作成します。

  2. エージェントから送信されているものをキャプチャできるように、エージェントをモックサービスにポイントします。(つまり、SOAPリクエストをキャプチャします)。

  3. 同じSOAPリクエストを使用して、SOAPUIを介して.NETサーバーに送信します。問題を再現し、何が失敗しているかについての詳細情報を提供する必要があります。

次のwiki記事では、これを行う方法について説明しています。

http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Testing_your_Domino_web_service_provider_and_consumer_using_SoapUI._

于 2012-07-02T09:28:28.027 に答える