Actually, all exception messages need to be internationalized. The steps are pretty straightforward:

1. Add a new line in the `JcrI18n.properties` file, following the pattern that the key is some short-form of the actual English message (e.g., "projectionExpressionIsInvalid") and the value is the English message with variables (e.g., `{0}` and `{1}`) where values are to be inserted at runtime (e.g., "The projection expression '{0}' does not match the expected format")
1. Add a new static final field in the `JcrI18n.java` class that creates an `I18n` object with the same key used in the file.
1. Change the line above to use it, much like [other places|https://github.com/ModeShape/modeshape/blob/master/modeshape-jcr/src/main/java/org/modeshape/jcr/RepositoryConfiguration.java#L1177] in the same class:

    `throw new IllegalStateException(JcrI18n.projectionExpressionIsInvalid.text(pathExpression));`

Would you mind making this changes in your pull-request?