2012-12-19 12 views
10

Robię pewne prace rozwojowe w JSF z MyFaces i otrzymałem to ostrzeżenie.Jaka jest różnica między rozwojem a produkcją w MyFaces

******************************************************************* 
*** WARNING: Apache MyFaces-2 is running in DEVELOPMENT mode. *** 
***           ^^^^^^^^^^^   *** 
*** Do NOT deploy to your live server(s) without changing this. *** 
*** See Application#getProjectStage() for more information.  *** 
******************************************************************* 

Jaka jest różnica między trybem rozwoju a trybem produkcji? Czy są zagrożenia bezpieczeństwa? Czy to tylko ulepszenia wydajności?

Odpowiedz

15

Nie ma żadnych zagrożeń bezpieczeństwa, niemniej jednak mają one wpływ na wydajność. Gdy etap projektu jest ustawiony na rozwój, będzie częściej rejestrowany i mniej buforowany.

W przypadku logowania rejestrowane są dodatkowe informacje debugowania dotyczące sposobu budowania i renderowania komponentów. Na przykład, jeśli masz numer <h:inputText> bez żadnego rodzica <h:form>, to zostanie on zarejestrowany i wyświetlony jako wiadomość skierowana. Wszystkie wiadomości w kolejce, które nie są wyświetlane w żadnym z komponentów <h:message(s)>, będą wyświetlane w każdym razie na osobnej liście wiadomości u dołu strony, z pomarańczową czcionką ostrzegawczą, która będzie oznaczać komunikaty "niewyświetlane". Poza tym obsługa wyjątków jest inna, MyFaces zamiast na <error-page> wyświetla bogatą stronę błędu zawierającą szczegóły dotyczące drzewa komponentów i zmiennych o zakresie.

W przypadku buforowania pamięć podręczna Facelet będzie się regularnie odświeżać. Jeśli więc wprowadzisz zmiany w pliku Facelet i wciśniesz F5, zmiany zostaną "natychmiast" odzwierciedlone. Nie jest to prawdą w przypadku etapu produkcyjnego, w zasadzie trzeba ponownie uruchomić cały serwer.

Plik JavaScript w wersji jsf.js pojawi się jako wersja niesklasyfikowana, umożliwiając łatwiejsze debugowanie JS w przeglądarce internetowej. W fazie produkcji jest to wersja zminimalizowana, która jest zatem mniejsza i szybsza w obsłudze, ale jest całkowicie nieczytelna.

Mojarra ma podobne zachowanie, może się spodziewać strony z bogatym błędem.

Powiązane problemy