cancelRejection

Signature

def cancelRejection(rejection: Rejection): Directive0

Description

Adds a TransformationRejectionTransformationRejection cancelling all rejections equal to the given one to the rejections potentially coming back from the inner route.

Read Rejections to learn more about rejections.

For more advanced handling of rejections refer to the handleRejections directive which provides a nicer DSL for building rejection handlers.

Example

Scala
val route =
  cancelRejection(MethodRejection(HttpMethods.POST)) {
    post {
      complete("Result")
    }
  }

// tests:
Get("/") ~> route ~> check {
  rejections shouldEqual Nil
  handled shouldEqual false
}
Java
import static akka.http.javadsl.server.Directives.cancelRejection;

final Route route = cancelRejection(Rejections.method(HttpMethods.POST), () ->
  post(() ->  complete("Result"))
);

// tests:
runRouteUnSealed(route, HttpRequest.GET("/"))
  .assertRejections();
Found an error in this documentation? The source code for this page can be found here. Please feel free to edit and contribute a pull request.