A func_train doesn't need an origin brush, only if you use angular velocity on it. Func_track_trains however, DO need an origin brush.
Make your func_train out of world brushes and add an origin brush in de middle. Select the origin brush and the world brushes that is the actual train and tie them to a func_track_train.
Here's a list of brush based entities that require an origin brush in order to work:
func_pendulem
func_door_rotating
func_rotating
func_track_train
func_train (only when using angular velocity)
Anything else i forgot to mention?
The problem is that if an origin brush isn't tied to an entity and is just a world brush, you will get that error.