// cart.getPassenger().teleport(ejectTarget.getLocation());
// the client tweaks as bukkit tries to teleport you, then changes its mind and leaves you in the cart.
// the cart also comes to a dead halt at the time of writing, and i have no idea why.
Entity ent = event.getMinecart().getPassenger();
event.getMinecart().eject();
ent.teleport(BukkitUtil.center(ejectTarget.getLocation()));
// notice!
// if a client tries to board a cart immediately before it crosses an ejector,
// it may appear to them that they crossed the ejector and it failed to activate.
// what's actually happening is that the server didn't see them enter the cart