1. Java / Говнокод #4584

    +77

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    JavaServer Faces 1.2, Facelets, страница .xhtml:
    
        <p:nbsp/>
    
    Что является вызовом facelet-тага, ссылающегося на другой (НEвалидный) .xhtml-файл:
    
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <ui:component xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets">
            <h:outputText escape="false" value="&amp;nbsp;" />
        </ui:component>
    
    Это, типа, способ вставить &nbsp; на страницу. Вместо того, что бы просто написать &nbsp; где это нужно. 
    А что бы это работало в xhtml-нике, нужно всего лишь поставить правильный DOCTYPE вначале 
    документа.

    Запостил: yvu, 11 Ноября 2010

    Комментарии (9) RSS

    • JSF ужасно, круче даже asp.net по ужасносте.
      к счастью у них обеих есть масса альтернатив на их платформах.

      да! и эти люди запрещают мне ковырятся в носу и ругают xslt)
      Ответить
    • я счастлив, что не пользуюсь JSF
      Ответить
    • Странные вы. При чём тут JSF? Это ограничение XML. Говнокодость в том, что человек не знал, как правильно объявить DTD-шку в начале файла, поэтому сделал мега-обходной путь.
      Ответить
      • при том, что стандартные HTML сущности не плохо бы объявлять в JSF:)
        Ответить
        • Ты, наверно, просто не понимаешь, о чём говоришь.

          Вот есть вьюшка - XML-ный документ. Правила использования XML таковы, что все к нему расширения должны быть описаны в самом документе. Например, стандартные сущности любого документа - amp, lt, gt, quot. Если нужно больше - будь добр, объявляй их через соответствующие механизмы, например ENTITY или DOCTYPE. Может быть, и через XSD можно - не помню.

          Не может быть никаких "объявлять в JSF". С точки зрения программы, которая парсит этот XML-документ, нет никаких "JSF", есть только XML и описанные в его стандартах правила. Нигде не объявил сущность - значит, у тебя невалидный документ.
          Ответить
    • будущее за JSF2.0
      Ответить

    Добавить комментарий