Eclipse IDE を使用して単純な Hello World プロジェクトを開発しています。IDE から実行できます (Web サービス -> Web サービス エクスプローラーでテスト)。それから完全に機能しますが、
http://localhost:8080/ode/processes/HelloWorld/
にアクセスしようとすると、いくつかの例外が発生します。
org.apache.axis2.AxisFault: 見つからない操作のエンドポイント参照 (EPR) は /ode/processes/HelloWorld/ であり、org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java: 86) org.apache.axis2.engine.Phase.invoke(Phase.java:308) で org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212) で org.apache.axis2.engine.AxisEngine org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:125) の .receive(AxisEngine.java:132) org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil) .java:119) で org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:799) で org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:242) でorg.apache.ode.axis2.hooks.ODEAxisServlet.doGet(ODEAxisServlet.java:62) で javax.servlet.http.HttpServlet.service(HttpServlet.java:617) で javax.servlet.http.HttpServlet.service(HttpServlet.java:717) で org.apache.catalina.core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) で org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) で org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) でorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) で org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) で org.apache.catalina.valves.ErrorReportValve.invoke( ErrorReportValve.java:102) の org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) の org.apache.catalina.connector.CoyoteAdapter.org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) のサービス (CoyoteAdapter.java:286) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) の org .apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:729)
問題の可能性と、Web ブラウザーを介して値を入力し、そこから出力を取得するように開発する方法。ありがとうございました。
1 に答える
あなたの例にはいくつかの問題があります:
まず、投稿されたエラー メッセージによると、エンドポイントの URL が間違っています。ODE に同梱されている helloWorld の例を使用している場合、正しいエンドポイント URL はhttp://localhost:8080/ode/processes/helloWorldです。
2 番目: Web サービス エクスプローラーでは、SOAP エンドポイントを使用しています。ブラウザーは SOAP に対応していないため、Axis2 によってレンダリングされる HTTP バインディングに固執する必要があります。これは基本的に、URL を次のように構成する必要があることを意味します。
<endpointURL>/<operationName>?<part>=<value>...
helloWorld の例は、「hello」という 1 つの操作を提供する Web サービスをレンダリングします。この操作は、"TestPart" と呼ばれる 1 つの部分を含むメッセージを入力として受け取ります。この部分は、出力メッセージを計算するために使用されます。
上記のスキーマを使用すると、(GET 要求を介した) ブラウザーの有効な URL は次のようになります。
http://localhost:8080/ode/processes/helloWorld/hello?TestPart=Hello