Mariusz Prowaźnik

o programowaniu w Javie, Scali i Clojure.


Chrome i problem z JSF

Natknąłem się niedawno na problem związany z renderowaniem stron JSF przez Chrome. W przypadku innych przeglądarek (Opera, Firefox) wszystko było ok, ale w Chrome, mimo, że strona wyświetlała się prawidłowo, to nie działały wywołania akcji za pomocą commandButton:
<h:commandButton action="edytujDaneKonta" value="#{tekstInter.edytuj}"><f:setPropertyActionListener target="#{MOKStanSesji.wybraneKonto}" value="#{konto}" /></h:commandButton>

By rozwiązać problem wystarczy dodać <f:view contentType="text/html">

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core" >
    <f:view contentType="text/html">
  <!-- zawartość -->
    </f:view>
</html>

2 komentarze :

  1. Nie mam dużego doświadczenia w JSF, ale natrafiłem na podobny problem z Chrome i chciałem zapytać dla jakiej wersji biblioteki to rozwiązanie działa? Bo u mnie tag f:view nie ma atrybutu contentType.

    OdpowiedzUsuń