Check the project stage in a JSF page

There a these common ways to detect in a JSF page if a project is in development stage or not:

<h:panelGroup rendered="${ (facesContext.application.projectStage eq 'Development')  ? true : false }">
  <h:outputText value="Development stage" />
</h:panelGroup>
 
<h:panelGroup rendered="${ facesContext.application.projectStage eq 'Development' }">
  <h:outputText value="Development stage" />
</h:panelGroup>
 
<h:panelGroup rendered="#{ facesContext.isProjectStage('Development') }">
  <h:outputText value="Development stage" />
</h:panelGroup>
 
<c:if test="${ facesContext.application.projectStage == 'Development' }">
  <h:outputText value="Development stage" />
</c:if>

NetBeans LESS CSS Preprocessor und Maven Resources

Die folgenden Pfade sollen dabei helfen, eine Übersicht darüber zu bekommen, wohin Ressourcen aus einem JEE-Webarchiv bei einem Maven-Buildvorgang kopiert werden. Als Beispiel soll eine CSS-Datei mit dem Namen test.css dienen.
NetBeans LESS CSS Preprocessor und Maven Resources weiterlesen

JSF-Komponenten dynamisch erstellen

Variante 1:

import javax.faces.context.FacesContext;
import javax.faces.application.Application;
import javax.faces.component.html.HtmlInputText;
 
...
 
FacesContext context = FacesContext.getCurrentInstance();
Application app = context.getApplication();
HtmlInputText input = (HtmlInputText) app.createComponent(HtmlInputText.COMPONENT_TYPE);

Variante 2:

import javax.faces.component.html.HtmlInputText;
 
...
 
HtmlInputText input = new HtmlInputText();

JSF-Speicherort für Ressourcen (CSS / JS, …)

Damit in einer JSF-Seite verschiedene Dateien (Cascading Style Sheets, JavaScripts, …) aufgefunden und inkludiert werden können, müssen diese Dateien unter einem bestimmten Hauptordner abgelegt werden. Standardmäßig gültig sind dafür folgende Pfade:

src\main\webapp\resources
src\main\resources\META-INF\resources

Die jeweiligen Dateien können dann mit Angabe ihres Unterordners (library) und Namens (name) eingebunden werden:

Beispiel

  <h:outputStylesheet library="libs/pikaday/1.2.0" name="pikaday.css" />
  <h:outputScript library="libs/pikaday/1.2.0" name="pikaday.js" />