Атрибут layout недействителен в соответствии с указанным TLD

Мне нужен

в моей сети, но я использую JSF. Тогда мне нужен и layout="block" attibute.

Мой код:

Но, сервер Tomcat, который я использовал, возвратил ошибку и сказал:

Атрибут layout недействителен в соответствии с указанным TLD.

Мне нужна помощь, потому что я не понимаю эту ошибку.

1 ответ

Атрибут layout был введен в JSF 1.2. Эта ошибка говорит о том, что вы используете древний JSF 1.1 или, возможно, даже мертвый JSF 1.0.

У вас есть в основном 2 варианта:

  1. Обновите JSF 1.2 или желательно до JSF 2.x, который вышел уже более 2 лет и почти в версии 2.2. Вы можете скачать реализацию JSF здесь. Обратите внимание, что JSF 1.2 на JSP требует, по крайней мере, совместимого с Servlet 2.5 контейнера. Таким образом, вам нужно иметь хотя бы Tomcat версии 6.0 или, желательно, Tomcat 7.0, который уже больше 2 лет. Убедитесь, что ваш web.xml объявлен, соответствует самой высокой версии сервлета, поддерживаемой контейнером.

  2. Если вы не можете перейти на JSF 1.2 или новее, потому что вы застряли на Tomcat 5.5 или старше по какой-то непонятной причине, вы должны забыть использовать и вместо этого использовать обычный элемент

    . Вам нужно только обернуть его в потому что JSF 1.1 и старше не могут нормально обрабатывать обычный HTML.
    <f:verbatim><div>
     ...
    </div></f:verbatim>

Смотрите также:

licensed under cc by-sa 3.0 with attribution.