ďťż
 
logowanie w JSP ďťż
 
logowanie w JSP
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

logowanie w JSP



JW - 14-09-2006 00:40
logowanie w JSP
  Prosty problem:
Chciałbym zrobić stronę, do której dostęp wymaga logowania i jeśli ktoś się
będzie do niej bezpośrednio odwoływał, to powinien zostać przekierowany na
strone logowania.
Zrobiłem to więc tak:

<%-- sprawdzic czy uzytkownik zalogowany --%>
<% lab.Student student = (lab.Student)session.getAttribute("student") ;
if( student == null )
{
response.sendRedirect("login.html");
}
else {
response.setContentType("text/html; charset=ISO-8859-2"); %>

<%--treść strony --%>
<% } %>

Ten setContentType jest dlatego, że zastosowanie dyrektywy w tym przypadku
nie działa, gdyż dyrektywa generuje zawartość przed wykonaniem
przekierowania, co jest niedozwolone.

Problem w tym, że mam mimo wszystko złe kodowanie na stronie (odpowiedni
znacznik META oczywiście jest). Dziwi mnie to, że wywołanie setContentType
nie pomaga.

Czy ktoś mógłby mi podrzucić pomysł na jakieś standardowe rozwiązanie tego
problemu?? Specjalny serwlet do wykonywania testów, czy użytkownik jest
zalogowany?? Ale jakoś nie widze, żeby to miało rozwiązać problem.

Z góry dzięki za odpowiedzi.

--
pzdr.
JW





Michał Bartyzel - 14-09-2006 00:40

 
Aby otrzymać polskie znaki w aplikacji, należy informacje o tym
zamieścić w trzech miejscach.
* W stronach jsp należy umieścić dyrektywę:
<%@ page contentType="text/html;charset=UTF-8" pageEncoding=
"UTF-8" %>

* W plikach html, sekcji head należy umieścić znacznik:
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
Do tyczy to również kodu html, generowanego przez strony jsp.

* Należy zainstalować filtr kodujący polskie znaki w UTF-8. Jeśli
założyć, nie zmienisz nazw pakietów, web.xml należy dodać
następujące wpisy:

<filter>
<filter-name>myFilter </filter-name>
<filter-class>app.filter.DefaultFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>myFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

Kod filtra
public class DefaultFilter implements Filter {
public void init( FilterConfig filterConfig ) throws ServletException { }

public void destroy() { }

public void doFilter( ServletRequest request, ServletResponse response,
FilterChain chain) throws ServletException, IOException {

HttpServletRequest httpRequest = (HttpServletRequest) request;
httpRequest.setCharacterEncoding("utf-8");
chain.doFilter(httpRequest, response);
}

}




Michał Bartyzel - 14-09-2006 00:40

  PS. Klase filtra umieszczasz w pakiecie app.filter. Chyba, ze chcesz w
innym to zmien wpis w web.xml

pozrawiam
Michał




Rami - 14-09-2006 00:40

 
> Czy ktoś mógłby mi podrzucić pomysł na jakieś standardowe rozwiązanie tego
> problemu?? Specjalny serwlet do wykonywania testów, czy użytkownik jest
> zalogowany?? Ale jakoś nie widze, żeby to miało rozwiązać problem.
>

a JAAS ?
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    ms sql 2000 i ms server 2003 problem z logowaniem =?iso-8859-2?q?[MSSQL_2000]_logowanie_procedur_zagnie=BFd=BFonych?= =?iso-8859-2?q?firebird_i_triggery_-_logowanie_historii_zmian_zawarto=B6ci?= Os-commerce i Forum vs wspolne logowanie Firebird logowanie =?ISO-8859-2?Q?zapyta=F1?= MySQL serwer dziala brak logowania [mysql] Logowanie zapytań do bazy danych SQL SERVER EXPRESS 2005 - logowanie [SQL Express 2005] Logowanie zapytan znowu zdalne logowanie do bazy mysql :/
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • absolwenci.keep.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com