To get JBoss to work with other JSF implementations, you would need to add a directive to the web.xml file telling JBoss to switch off JSF for that app, then include your own JSF implementation as part of the WAR/EAR. Check the WebLogic documentation.
There were significant changes to JSF between JSF 1 and JSF 2. JSPs were dropped in favor of Facelet View Templates (.xhtml). Taglibs basically went away, as JSF 2 element handlers only dimly resemble
JSP tag handlers. DTDs were replaced with XML schemas. The EL processor interface was totally overhauled. Of course, there are also many improvements, as well. Facelets make tiled Views much easier, for example.
My #1 rule in JSF is that the more JSF-specific code your app has, the more likely you're doing it wrong. JSF was designed to work primarily with POJOs, and the presence of imports for any javax.faces classes except for the data model façades (SelectItem and DataModel) is an instant alarm to me. Aside from the simple fact that it probably means a more straightforward solution has been missed, the more JSF-specific code an app has, the more it is likely to be impacted by internal changes to the JSF implementation itself.