Ich erachte das beschriebene Szenarion als sinnvoll.
300 - die angeforderte Ressource gibt es nicht, aber du könntest vielleicht eine dieser Ressourcen gemeint haben.
Aber es bleibt doch eine Unterstellung? Wo ist der Gewinn? Du hast doch
http://selfhtml.apsel-mv.de/java-javascript/
online, was das Thema IMHO sehr schön auf den Punkt bringt. Dem User/Client mögliche Alternativen anzubieten, ist eine sehr gute Idee, ja!
Aber die Unterscheidung zwischen HTTP 300 und HTTP 404 ist dabei IMHO komplett nutzlos. Wo liegt da der Sinn?