Java-апплет на сервере GlassFish 3.0.1 - PullRequest
0 голосов
/ 31 января 2012

Я разработал апплет и использую JSP для его загрузки. Я работал с использованием NetBeans 6,9. Апплет работает нормально без JSP. Когда я запускаю JSP на сервере Glassfish, апплет не запускается.

Моему апплету требуется 43 секунды для обработки и отображения, я думаю, что это может быть проблемой.


Когда я запускаю тот же JSP с тем же апплетом, но с небольшими изменениями, апплет работает правильно с JSP. Модификация заключается в том, что я закомментирую вызов функции (вызванный из init() метода), который отвечает за большое время выполнения. Длительный метод читает три файла и генерирует вывод в кнопках выбора, то есть генерирует выбор.

Но мне нужна эта функция в моем апплете, это очень важная функция.

В каждом операторе catch содержится вызов метода printstacktrace().

public void start(){
   initialise_maps();
}


public void init() {
    try {
        java.awt.EventQueue.invokeAndWait(new Runnable()
        {
            public void run() {
                initComponents();
            }
        });
    } catch (Exception ex)
    {
        ex.printStackTrace();
    }
 //   initialise_maps();
}

1 Ответ

0 голосов
/ 04 февраля 2012

Модификация заключается в том, что я закомментирую вызов функции (вызванный из init() метода), который отвечает за большое время выполнения.

Похоже, что необходимо реорганизовать вызов этого метода в метод start() или сделать это в отдельном Thread (например, используя SwingWorker).


Длительный метод читает три файла и генерирует вывод в кнопках выбора, то есть генерирует выбор.

Добавьте поля выбора в методе init(), но заполните их в методе start() (если это еще не сделано - метод запуска вызывается каждый раз, когда браузер восстанавливается из свернутого, а также сразу после init()).

...