【问题标题】:Custom Rest API in Alfresco activi 5.* or 6.*Alfresco activi 5.* 或 6.* 中的自定义 Rest API
【发布时间】:2017-10-31 23:04:13
【问题描述】:

我编写了自定义休息服务,它将在一次休息调用中返回任务和变量。现在我想将这个 rest api 与 alfresco activiti rest api 集成。 找到网址:http://docs.alfresco.com/process-services1.6/topics/custom_rest_endpoints.html 但是在构建 jar 并将其放入 web-inf/lib 之后,触发相应的 rest 调用会给出 404。 请建议我如何将自定义休息端点/服务添加到现有的 activiti 休息服务以及如何访问它?

【问题讨论】:

  • 我想我们将需要您的网络服务描述符,以及您将它放在项目中的位置。
  • @Akah,因为我使用的是 Rest 服务,所以我没有 wsdl。我有'@restcontroller'、'@requestmapping' spring mvc 注释。
  • 因为我没有编辑权限,所以无法将整个控制器类粘贴到 cmets 部分。 '@Controller' '@RequestMapping'("/enterprise/test") public class WorkListItemController { private static final Logger logger = LoggerFactory.getLogger(WorkListItemController.class); '@Autowired' 私有 WorkListItemService workListItemService; '@RequestMapping'(value = "/getWorkListItems", method = RequestMethod.POST) public ResponseEntity getWorkListItems('@RequestBody'WorkListItemRequestVO workListItemRequest) {

标签: java rest alfresco activiti business-process-management


【解决方案1】:

您似乎正在使用 Spring 注释来注册您的 ReST 控制器。 您确定正在扫描控制器类吗?

当控制器注册时,您应该在服务器日志中获得类似于以下内容的日志条目:

05:01:05,997 [localhost-startStop-1] INFO org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - 映射“{[/runtime/tasks/{taskId}],methods=[DELETE ]}" 到公共 void org.flowable.rest.service.api.runtime.task.TaskResource.deleteTask(java.lang.String,java.lang.Boolean,java.lang.String,javax.servlet.http.HttpServletResponse)

如果您没有这样的日志条目,则您的控制器类没有被注册并且可能没有被扫描。

可能值得检查。 格雷格

【讨论】:

  • 你是对的。我的自定义 uri 没有在 tomcat 启动时被扫描。我可以看到所有默认的 uri(如 /repository/*、identity/*、/runtime/* 等)。你能帮我解决问题吗?
  • 您的 ComponentScan 设置是什么?
  • 所以,简而言之,我有一个简单的 web 应用程序休息,它是为我的自定义休息 api 项目建立在 maven 上的。它有 web.xml、spring-context.xml 等。我将其中的组件扫描为“com.activiti.rest.api”。独立的网络应用程序正在运行。但是当我 jar 时,我只看到该存档中的 .class 和属性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-02
  • 1970-01-01
  • 2016-03-15
  • 2014-05-06
  • 1970-01-01
  • 2020-09-05
  • 2021-10-31
相关资源
最近更新 更多