cancel
Showing results for 
Search instead for 
Did you mean: 

Automation REST Response: how to return a custom message?

ioihanguren_
Star Contributor
Star Contributor

Following Automation REST Response documentation, we are able now to create a custom exception and return an appropiate http error code from our operations, as shown in the example below:

{
    "entity-type": "exception",
    "code": "org.nuxeo.ecm.automation.TraceException",
    "status": 600,
    "message": "Failed to invoke operation: Test.UpdateDocMetadata"
}

In this example 600 is our custom error code.

Now, we would like to be able to return a custom message in the exception. For example, instead of having "Failed to invoke operation: Test.UpdateDocMetadata operation", we would like to have a custom message. Is this posible?

We are using Nuxeo 7.2.

Thanks in advance and best regards,

1 REPLY 1

Greg_Drayon
Star Contributor
Star Contributor

Hi!

I can think about several possibilities, depending on what you have done. If I only look at the example you gave, you can:

  • set your custom message in the ExceptionTest class;
  • Create a complete custom Exception where you set up your custom message and you don't necessarily have to extend RestOperationException (but you may have to extend class org.nuxeo.ecm.automation.OperationException)
  • In the HttpStatusOperationTest class (with ExceptionTest), set your custom message when constructing the ExceptionTest or with (ExceptionTest.)setMessage before throwing the Exception
  • In the HttpStatusOperationTest class (when success in Automation Operation), root is a DocumentModel, which has metadata. From your very example, it has a metadata named "message", so you should be able to update it with setProperty or setPropertyValue before returning root.

I hope this helps.

Getting started

Attention: Blogs & Forums are in READ-ONLY mode from Oct 9-19 as we transition to our new platform. Learn more.

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.