I have the following method in my service layer.

```
public void delete(int candidateId) {
    candidateRepository.delete(candidateId);
}

```

Pretty basic, now this method is used by the web layer which RESTful architecure is applied.
The URL that will trigger this method is:

```
DELETE    /candidates/{id}

```

How should I deal with wrong ids given by the clients that use the REST API in the service layer? I know the HTTP response would be 4xx but how should I communicate that the id is invalid between the service and web layer?

Should I use a unchecked exception since this is a condition that my application is unable to recover from? The fault barrier (Spring exception handler) will deal with it.

Or should this be a checked exception since it is possible that clients give wrong ids?

I am using the latest Spring technology if that matter