I'm curious as to what is the difference between the two, if there's any.
For example, .net Razor is a view engine/technology or a templating system? JSF's Facelets is a view engine or templating system?
In order of how a typical html page is generated from a .cshtml file.
Therefore this means that .net Razor is 2 components, a templating system but also a View generating engine.
I don't know too much about JSF Facelets but from the looks of its jsf facelet wikipedia page it is indeed a templating technology.