Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Инициализация jsp, init() для jsp 
:(
    Опции темы
librarian
Дата 30.4.2006, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 22.4.2006

Репутация: нет
Всего: нет



Необходимо, чтобы перед первым запуском jsp-страницы происходила инициализация (например, анализ некоторого xml-файла или упаковка контекстных параметров, заданных в web.xml в бины). У сервлетов для этого есть функция init(). А как насчет jsp? 
PM MAIL   Вверх
Tirael
Дата 1.5.2006, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 31.1.2006
Где: Москва

Репутация: 1
Всего: 7



Производить какие-то операции и логические вычисления на JSP странице, возможно, является не самой лучшей идеей. 

Хотя технологию JSP очень часто описывают как "HTML + вставки кода", такого пытаются избегать. А именно: 
1. Вся логика приложения ложиться на сервлет.
2. JSP используется только для представление данных. И только в крайнем случае делаются какие-то вычисления.




  

Это сообщение отредактировал(а) Tirael - 1.5.2006, 01:13
--------------------
 
PM MAIL   Вверх
Tirael
Дата 1.5.2006, 01:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 31.1.2006
Где: Москва

Репутация: 1
Всего: 7



Собственно это был совет  smile 

По вопросу посмотри, например, здесь: 
http://khpi-iip.mipk.kharkiv.edu/library/j.../JSPIntro5.html 

Ты замещаешь методы  jspInit()  и jspDestroy() прямо на JSP странице, примерно вот так: 
Код

<%@ page import="database.*" %>
<%@ page errorPage="errorpage.jsp" %>
<%@ page import="javax.ejb.*, javax.naming.*, javax.rmi.PortableRemoteObject, java.rmi.RemoteException, database.BookDB, database.BookDBEJB, database.BookDBEJBHome" %>
<%!
    private BookDBEJB bookDBEJB;

    public void jspInit() {

      bookDBEJB =
          (BookDBEJB)getServletContext().getAttribute("bookDBEJB");

      if (bookDBEJB == null) {
        try {
          InitialContext ic = new InitialContext();
          Object objRef = ic.lookup("java:comp/env/ejb/BookDBEJB");
          BookDBEJBHome home = (BookDBEJBHome)PortableRemoteObject.narrow(objRef, 
          database.BookDBEJBHome.class);
          bookDBEJB = home.create();
          getServletContext().setAttribute("bookDBEJB", bookDBEJB);
        } catch (RemoteException ex) {
            System.out.println("Couldn't create database bean." + ex.getMessage());
        } catch (CreateException ex) {
            System.out.println("Couldn't create database bean." + ex.getMessage());
        } catch (NamingException ex) {
            System.out.println("Unable to lookup home: "+ "java:comp/env/ejb/BookDBEJB."+ ex.getMessage());
        }
      }
    }

   public void jspDestroy() {      
      bookDBEJB = null;
  }
%>
 

Это сообщение отредактировал(а) Tirael - 1.5.2006, 01:27
--------------------
 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0421 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.