I know Scala Lift applications can be put into a Java EE server. And Scala Lift seems to compete/substitute JSF as presentation layer of Java EE.
Will I be able to use EJBs and JPA in a Lift application? And if yes, could it be also possible to use JSF alongside Lift as a fallback, like URLs with one prefix go to Lift and with another to JSF?
Yes, you can use EJB and JPA in a Lift app. Just call your java methods from within Lift snippets. Just like any Java application, if it is on the classpath, you can use it.
As to your second question, anything is possible. The only sane way I can think about doing what you’re describing would be to configure your servlet filters (in WEB-INF/web.xml) to pass some requests to Lift and others to JSF. You could also cook up a way to do this within either JSF or Lift, essentially proxying certain requests from one to the other. It is hard to imagine a use case that would justify such ugliness, but it is possible.