[JSF Workspace] ist ein Tool zum Entwickeln von [JSF] Modulen mit [Maven].

!!!Hintergrund
Mit [Maven] können JSF-Web-Anwendungen, gebaut und mit dem tomcat6- oder tomcat7-maven-plugin gestartet werden. Dies ist sehr praktisch:

* Das WAR wird  durch Maven gebaut
* Abhängige Projekte werden direkt referenziert
* Kein zusätzlicher Build-Schritt notwendig, um JARs ins WAR zu kopieren
* Das Projekte kann Konfigurationsfrei in einer lokalen Embedded-Tomcat-Instanz gestartet werden (im target-Folder)
* Mit dem [WAR Maven Plugin] kann das Projekt in target/${build.}
* [Eclipse] unterstützt durch das Maven-4-Eclipse-Plugin (M4E-Plugin) das synchrone Debuggen

Das M4E-Plugin stellt die Option Resolve Workspace Artifacts zur Verfügung. Das gestartete WAR-Projekt referenziert somit alle Maven-Artifakte die sich im Eclipse-Workspace befinden direkt und nicht mehr über das lokale Maven-Repository. Der Vorteil besteht in schneller Entwicklung der JARs, da kein kompletter Build-Zyklus mit Server-Neustart mehr notwendig ist.

In dieser Konfiguration arbeitet leider das Annotation-Scanning von JSF nicht mehr korrekt. Dadurch geht die Funktionalität der  JSF-Annotationen in den referenzierten Workspace-JSF-JARs verloren.

!!!Lösung
[JSF Workspace] enthält einen Annotation-Scanner für genau diesen Zweck. Die Annotationen arbeiten damit wieder korrekt und es kann komplett im Workspace entwickelt werden:

* Class-Dateien werden ohne Maven-Build direkt referenziert, falls Hotswap nicht ausreicht ist (wie üblich) ein Server-Neustart erforderlich.
* Javascript, CSS-, XHTML-Dateien und andere Ressourcen werden upgedated

Dies bietet eine drastische Erleichterung beim Entwickeln von Taglibs und ähnlichen.