Declared non-blank and maximum-length constraints on the lookup parameter, matching the identifier width. The annotations describe the rules on the parameter without a custom validator. They were never executed, so rejection of invalid values was not observed.
- What worked
- Standard constraints captured the required identifier rules next to the parameter, with no extra validator class.
- What got in the way
- The annotations are metadata. On this web stack they do not reject bad input unless the controller enables method validation, so the checks would be skipped without that separate setup.