|
|
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
Уже долго грею голову над этим. Есть веб приложение. Сейчас реализовано так: просто в jsp страницы напихан код, который берет login и пароль из сессии клиента и ищет в базе, если не находит то говорит: failed!. В каждую страницу вставлять такой код не хочется. Сейчас перевожу приложение на mvc. Но это не решает проблемы. Все равно этот код придется писать в сервлетах контроллерах. Пробовал подключить авторизации как АОП Advice- не получилось, хотя по началу идея очень нравилась.. Куда бежать за что хвататься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 15:38 |
|
||
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
ХАВсе равно этот код придется писать в сервлетах контроллерах надо всего лишь в одном контроллере. практически все реализации MVC предполагают один сервлет-контроллер, который далее раскидывает по действиям запросы от клиента. проверку можно решить также фильтром (javax.servlet.Filter) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 15:41 |
|
||
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
Пишу фильтр: package filters; import javax.servlet.Filter; import javax.servlet.FilterConfig; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class AuthorizationFilter implements Filter{ private FilterConfig conf; public void init(FilterConfig config){ this.conf=conf; } public void doFilter(ServletRequest request,ServletResponse response, javax.servlet.FilterChain chain ) throws ServletException,java.io.IOException { /* authorization succesfull */ if (1==1) { chain.doFilter(request,response); } else { try{ /* authorization failed*/ RequestDispatcher dispatcher = request.getRequestDispatcher("errors/authorization_error.jsp"); }catch(Exception e){e.printStackTrace();} } } public void destroy(){ } public static void main(String[] args) { } } Хотелось бы что,s в случае неудачи авторизации управление предавалось страничке errors/authorization_error.jsp Где будет написано: "Будте добры - авторизуйтесь". Отридеректить на эту страничку из фильтра, либо сделать dipatcher.forward() не получаетсся. Можно сформировать ответ- собственно страницу errors/authorization_error.jsp самим фильтром, но это возможно не лучшее решение. Как это обойти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 07:46 |
|
||
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
Alexey TurnПишу фильтр: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. Хотелось бы что,s в случае неудачи авторизации управление предавалось страничке errors/authorization_error.jsp Где будет написано: "Будте добры - авторизуйтесь". Отридеректить на эту страничку из фильтра, либо сделать dipatcher.forward() не получаетсся. Можно сформировать ответ- собственно страницу errors/authorization_error.jsp самим фильтром, но это возможно не лучшее решение. Как это обойти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 09:16 |
|
||
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
а почему не получается? как ты это определил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 09:23 |
|
||
|
Как реализовать проверку авторизации?
|
|||
|---|---|---|---|
|
#18+
)) упс кажется я продогнался Вчера писал код под вермутом, написал: RequestDispatcher dispatcher = request.getRequestDispatcher("/index.jsp"); и забыл написать: dispatcher.forward(r,r); от так вот . один плюс от этого servlet2.3 api стал лучше знать:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 11:27 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=809&tid=2152544]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
63ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 392ms |

| 0 / 0 |
