I'd say that both could be used. He went to Japan on or for a holiday/vacation. However, sentence #2 could imply a national or religious holiday. Perhaps one can say it depends on the context.
We may say that both examples are correct. In example one, «on holiday» is an adverb of manner. In example two, «for a holiday» is an adverb of purpose.