Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Perl & Java 
:(
    Опции темы
Firebird
Дата 4.5.2007, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



  Добрый день! 
  Вопрос касается запуска Java-апплетов в Perl-сценарии.
 
   Есть Java-апплет:
  
Код

import java.applet.*;
import java.awt.*;

public class TEST extends Applet
{
    int curX = 50;
    int curY = 50;
    public boolean mouseDown(int x, int y, Event e)
    {
        curX = x;
        curY = y;
        repaint();
        return true;
    }

    public void paint(Graphics g)
    {
        g.drawString("Java in Action!", curX, curY);
    }
}


   Скомпилировал его, получил класс TEST.class

   Далее пишу Perl-сценарий, в котором этот апплет должен запускаться:

Код

#!c:\perl\bin\perl.exe
use CGI qw \:standard\;

print "
  <html>
  <head>
     <title>Perl&Java</title>
  </head>

  <body>
    <applet code='TEST.class' widht=200 height=200>
     Java not supported!
    </applet>
  </body>
</html>
";  


   Запускаю сценарий в IE, но при загрузке апплета выводится сообщение Applet TEST notinited, т.к. апплет реагирует на движение мышки, то после помещения курсора мыши над апплетом выводится второе сообщение Loading Java Applet Failed...

  Апплет рабочий, запускал его сначала в HTML-скрипте, затем в PHP-сценарии, но в Perl-сценарии не запускается!!!
  В чем причина???

PM MAIL   Вверх
korob2001
Дата 5.5.2007, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2871
Регистрация: 29.12.2002

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



Причина скорее всего в том, что твой апплет находится в каталоге /cgi-bin. Попробуй переместить апплет в каталог www и укажи к нему путь /TEST.class в теге <applet></applet>, в Perl программе.

В Perl коде, передавай заголовок.
Код

print "Content-type: text/html\n\n";
# Здесь твой print


use CGI удали, ты всё равно его здесь не используешь.

К тому же воспользуйся поиском, здесь я как-то приводил пример того, как создавать Java классы прямо из программы Perl, после чего Perl может к ним обращаться как к своим родным классам. Это позволит тебе генерировать аплет на лету и обращаться к его методам. Разумеется для приведённого апплета это и не нужно, но для более крупных проектов это может пригодиться.

Почему наследуешь от Applet, а не от JApplet?  Вообще-то рекомендуется юзать Swing.

Это сообщение отредактировал(а) korob2001 - 5.5.2007, 10:34


--------------------
"Время проходит", - привыкли говорить вы по неверному пониманию. 
"Время стоит - проходите вы".
PM MAIL WWW ICQ MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


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

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


 




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


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

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