1

からこの API/WS にアクセスできます
http://localhost:8080/ode/processes/ProcessManagement?wsdl

  1. このサービスを介してプロセスのプロセス情報を取得し、有効にしたいと考えています。
    このサービスには、一致する操作getProcessInfoとアクティブ化があります。
    を使用listAllProcessesすると、デプロイされたパッケージのすべてのプロセスを取得できます。Process が必要です
    。 これを使用すると、大量の例外が発生します。 以前に受け取ったプロセスの名前やその他のものを使用しても機能しません。はタイプです。おそらくそれが問題の原因です 。 ただし、ここで型キャストする方法はわかりません。 (Eclipse Web Services ExplorerとsoapUIですべて試しました)getProcessInfo/activatepid
    <ns:pid>

    pidQName

    質問:両方のオペレーションの適切なリクエストはどのように見えますか?

  2. Eclipse を介して axi2 で Web サービスを使用しようとするとlocal、AnySimpleType クラスに宣言されていない変数があります。このようにサービスを利用することに熱心ではありません。しかし、私はすでに DeploymentService のクライアントを作成しているので、このアプローチについて考えました。

    質問: ProcessManagement に正しくアクセスするにはどうすればよいですか?

編集: DeploymentServiceundeployOperationに同様の問題があります。
EDIT2: DeploymentService の問題を解決しましundeployた。
Packagename を文字列として取得する必要がありました。次に、それから javax.xml.namespace.QName を作成しました。次にsetPackageName、上記のundeploy操作を使用しました。

質問番号 1 への回答: listAllProcesses を指定した soapUI は getProcessInfo を望んでい
<ns:pid>{ode/bpel/unit-test}HelloWorld2-1</ns:pid>
ます

<pmap:getProcessInfo>
    <pid>?</pid>
</pmap:getProcessInfo>

今、私はに置き換えまし<pid>?</pid>たが
<pid xmlns:odetest="http://ode/bpel/unit-test">odetest:HelloWorld2-1</pid> 、それは魅力のように機能しました。

4

1 に答える 1

1

Axis2 で生成された WSDL を使用するときに、パラメーターの順序付けに問題があったことを覚えています。http://localhost:8080/ode/deployment/services/ProcessManagement動作している元の WSDL に対してリクエストを作成してみてください。

編集:質問を正しく受け取ったので、問題は ODE が QName が異なる方法で、つまり Java の方法ではなく XML の方法でシリアル化されることを期待していることです。したがって、<ns:pid>{ode/bpel/unit-test}HelloWorld2-1</ns:pid>正しい表記ではなく、 です<ns:pid xmlns:odetest="ode/bpel/unit-test">odetest:HelloWorld2-1</ns:pid>

于 2012-12-18T17:00:51.697 に答える