The best way i have found to set a character limit on a custom field is to add a regular expression check to the workflow transition. This is much simpler than a groovy script.
Go to Project Setting > Workflows
Edit the workflow for the affected issue type
Switch to Diagram mode
On Create transition, click on the Validators
Choose Add Validator > Regular Expression Check
If you would like to restrict the field to a specific length: enter [0-9]{n}$
(n) reflects your desired field length.
You just need to set this on the required workflow transition (ideally after the initial field input is required)