休息服务 - 找不到方法/操作

时间:2013-05-10 18:04:26

标签: rest cxf jax-rs

以为我对网址的映射方式有所了解,但这里没有任何运气。 CXF 2.7.3

我有一个简单的休息服务,它使用post来消费字符串。它构建和部署。

我想我应该尝试点击以下网址:

http://localhost:9764/workflow-management-service/services/createWorkflow?type=media-metadata

我的cxf-servlet.xml

<jaxrs:server id="workflowManagementServer" address="/">

我的web.xml

  <servlet-mapping>
  <servlet-name>cxf</servlet-name>
  <url-pattern>/services/*</url-pattern>
</servlet-mapping>

资源类

@Path(&#34; /&#34;)班级

createWorkFlow方法注释     @POST     @Produces({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})     @Consumes(MediaType.TEXT_PLAIN)
    @Path(&#34; / createWorkflow&#34;)

在浏览器中使用上面的URL时记录。

  

[2013-05-10 13:47:28,798] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 尝试选择资源类,请求pa   th:/ createWorkflow   [2013-05-10 13:47:28,798] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 尝试选择资源操作   资源类com.dg.cvp.workflow.WorkflowManagementResource   [2013-05-10 13:47:28,799] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,804] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,813] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,814] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,816] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 尝试选择资源操作   资源类com.dg.cvp.workflow.WorkflowManagementResource   [2013-05-10 13:47:28,816] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,824] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,834] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,835] DEBUG {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 没有方法匹配,方法名称:createWorkflow   ,请求路径:/ createWorkflow,方法@Path:/ createWorkflow,HTTP方法:GET,方法HTTP方法:POST,ContentT   ype: / ,方法@Consumes:text / plain ,, Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8 ,,我   thod @Produces:application / xml,application / json,。   [2013-05-10 13:47:28,843] WARN {org.apache.cxf.jaxrs.utils.JAXRSUtils} - 无操作匹配请求路径&#34; / workflow    - 管理 - 服务/服务/ createWorkflow&#34;找到,相对路径:/ createWorkflow,HTTP方法:GET,ContentType:* /   ,Accept:text / html,application / xhtml + xml,application / xml; q = 0.9, / *; q = 0.8,。请启用FINE / TRACE日志级别以获取更多信息    细节。   [2013-05-10 13:47:28,853] DEBUG {org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper} - WebApplicationException有    被抓住了,状态:405   javax.ws.rs.WebApplicationException           在org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:413)

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:1)

对于其他新人来说,使用浏览器地址栏发布是没有意义的。

找到一个很棒的Chrome扩展程序(高级REST客户端)来测试所有方式的休息服务, soapui是另一个广泛使用的客户端