# JSF, no tag was defined for name: html



## lill (28. Apr 2012)

Hi, ich hab eine JSF-Anwendung mit folgendem Setup:


jsf-api-2.0.3.jar
jsf-impl-2.0.3.jar
jsf-facelets-1.1.10.jar
jstl.jar
...

und einigen commons jars.

in der web.xml ist

[XML]
 <context-param>
  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
  <param-value>.xhtml</param-value>
 </context-param>
[/XML]

enthalten

wenn ich jetzt die Anwendung aufrufen möchte bekomme ich im Browser folgende Meldung:


```
javax.servlet.ServletException: <h:html> Tag Library supports namespace: http://java.sun.com/jsf/html, but no tag was defined for name: html
```

kann mir vll jemand sagen woran das lieg?


----------



## nillehammer (28. Apr 2012)

Den Tag "html" gibt es im Namespace "h" nicht. Für eine Übersicht, welche Tags es gibt, google mal nach "JSF Tag reference". IMHO ist ein fully blown JSF-Tag für html aber auch nicht nötig. Das ist ja nur das root-Element einer Seite. Schreibe es einfach direkt in die Seite (ohne h: davor).


----------



## lill (28. Apr 2012)

ok, aber wofür braucht man dass dann?


----------



## nillehammer (28. Apr 2012)

lill hat gesagt.:
			
		

> ok, aber wofür braucht man dass dann?


Wofür braucht man was? Das html-Tag? Das gehört halt als Root-Element in jede Seite rein. Oder meintest Du was anderes?


----------



## lill (28. Apr 2012)

sry, hab mich ungenau ausgedrückt

das h:
also was ist der Unterschied zwischen
<html>
und
<h:html>

wenn ich das h einfach rausnehmen kann


----------



## Fant (28. Apr 2012)

Das eine ist ein HTML-Tag, das andere ein JSF-Tag, welcher erst später in HTML gerendert wird.
Bei mir funktioniert <h:html ... /> problemlos. Liegt vielleicht daran, dass du doch relativ alte Pakete verwendest. Ist das Absicht? Wenn nicht, dann kannst du mal nach facelets 1.1.15. und jsf 2.0.8 bzw jsf 2.1.6 schauen


Gruß Fant


----------

