2010-11-24 55 views
0

我使用Eclipse IDE开发了一个简单的hello world项目。我可以从IDE运行它(Web服务 - >使用Web服务资源管理器测试)。从这一点上,它的工作完美,但如果我尝试访问 http://localhost:8080/ode/processes/HelloWorld/
它给出了一些例外。

org.apache.axis2.AxisFault:对于未找到操作端点引用(EPR)是/ ODE /进程/ HelloWorld的/与WSA动作=空 在org.apache.axis2.engine.DispatchPhase。 checkPostConditions(DispatchPhase.java:86) at org.apache.axis2.engine.Phase.invoke(Phase.java:308) at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:132) at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:125) at org.apache.axis2。 transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:119) at org.apache.axis2.transp ort.http.AxisServlet $ RestRequestProcessor.processURLRequest(AxisServlet.java:799) at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:242) at org.apache.ode.axis2.hooks。 ODEAxisServlet.doGet(ODEAxisServlet.java:62) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org。 apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke( StandardWrapperValve.java:233) at 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.service(CoyoteAdapter.java:286) 在org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:447) at java。 lang.Thread.run(Thread.java:729)


什么可能是问题,以及如何开发它,通过网络浏览器输入值并从中获取输出。 谢谢。如何从浏览器运行HelloWorld ODE?

回答

3

有你的榜样的几个问题:

首先,根据发布错误消息的端点的URL是错误的。您正在使用ODE附带的helloWorld示例,那么正确的端点URL是http://localhost:8080/ode/processes/helloWorld

第二:使用Web Service Explorer,您正在使用SOAP端点。由于浏览器不会说SOAP,因此您需要坚持Axis2呈现的HTTP绑定。这基本上意味着,URL应该是这样组成:

<endpointURL>/<operationName>?<part>=<value>... 

的HelloWorld示例呈现一个Web服务提供所谓的“你好”一个操作。该操作将消息作为输入包含一个名为“TestPart”的部分。这部分是用来计算输出消息的。

使用上面的模式,您的浏览器工作URL(通过GET请求)看起来是这样的:

http://localhost:8080/ode/processes/helloWorld/hello?TestPart=Hello