That is the only way that I'm aware of doing it. The specification doesn't allow for default values (there has been some prior discussion on adding things like RLE to the specification but that is a major project).
We use Apache Arrow 2.0.0 java implementation for data transfer and enrichment. Is there a way to set a default value for a Field? As of now we iterate all indexes of a FieldVector and set the same value.