// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//

= Интеграция апплета в веб-приложение
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Интеграция апплета в веб-приложение - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Интеграция апплета в веб-приложение

Апплет — это программа, написанная на языке программирования Java и встраиваемая в страницу HTML способом, в многом похожим на вставку изображения на страницу. Приложение, которое будет создано в этом учебном курсе, показывает, как выполнять сборку и развертывание апплетов в среде IDE.

*Примечание. *Хотя нет шаблонов проектов, которые специально разработаны для создания апплетов в IDE, их можно легко разработать в проекте Java и упаковать их в веб-проект, как показано в этом учебном курсе.


image::images/netbeans-stamp-80-74-73.png[title="Содержимое этой страницы применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0"]


*Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.*

|===
|Программное обеспечение или материал |Требуемая версия 

|link:https://netbeans.org/downloads/index.html[+IDE NetBeans+] |7.2, 7.3, 7.4, 8.0, версия Java 

|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Комплект для разработчика на языке Java (JDK)+] |версия 7 или 8 

|GlassFish Server Open Source Edition 
_или_ 
Контейнер сервлетов Tomcat |3.x или 4.x
_ _ 
версия 7.x или 8.x 
|===


== Создание или импорт файла исходного кода апплета

В этом разделе вы создадите свой первый апплет. Если у вас уже есть апплет, то указания, приведенные ниже, помогут импортировать его в среду IDE.


=== Создание проекта Java с нуля или с использованием имеющихся исходных кодов

1. Выберите команду "Файл" > "Создать проект" (CTRL+SHIFT+N). В области "Категории" выберите "Java".
2. Выполните одно из следующих действий.
* Для создания нового исходного файла в области "Проекты" выберите пункт "Библиотека классов Java". Нажмите кнопку "Далее".
* Для импорта исходного файла апплета выберите пункт "Проект Java с существующим исходным кодом". Нажмите кнопку "Далее". Укажите местоположение файла в текстовом поле "Папка с исходными файлами".


. В поле "Имя проекта" введите  ``HelloApplet`` . В области "Расположение проекта" укажите любую папку на своем компьютере.


. Нажмите кнопку "Завершить". Если файл исходного кода апплета был импортирован, <<runanddebug,запустите его>>.


=== Создание файла исходного кода апплета

1. Нажмите название проекта HelloApplet правой кнопкой мыши и выберите пункт "Свойства", при этом откроется окно "Свойства".
2. Выберите нужный формат исходных/двоичных файлов для проекта и нажмите ОК.

*Примечание.* Если выбрана версия JDK 1.6, апплет может не запускаться на компьютерах, на которых установлена предыдущая версия JRE или подключаемого модуля Java для браузера.



. Нажмите узел HelloApplet в окне "Проекты" и выберите "Новый" > "Другое" (Ctrl-N).


. В области "Категории" выберите "Java". В области "Типы файлов" выберите "Апплет".

Если же нужно использовать визуальные средства для разработки апплета, выберите "Формы Swing GUI" > "Форма JApplet".

Нажмите кнопку "Далее".



. В области "Имя класса" введите  ``MyApplet`` . В поле "Пакет" введите  ``org.me.hello`` .


. Нажмите кнопку "Завершить".

Среда IDE создает исходный файл апплет в указанном пакете. Исходный файл апплета открывается в редакторе исходного кода.



. Определите класс своего апплета, заменив существующий стандартный код следующим кодом:

[source,java]
----

     package org.me.hello;

     import java.applet.Applet;
     import java.awt.Graphics;

     public class MyApplet extends Applet {
         @Override
         public void paint(Graphics g) {
             g.drawString("Hello applet!", 50, 25);
         }
     }
                    
----

В качестве альтернативы, если вместо этого выполняется разработка форма апплета используйте документ link:../java/quickstart-gui.html[+Разработка графического интерфейса пользователя Swing в IDE NetBeans+] для создания аналога следующему:

image::images/movie-magic-quiz-design.png[]

Подробную информацию о написании апплетов см. в разделеlink:http://download.oracle.com/javase/tutorial/deployment/applet/index.html[+Апплеты+] Руководства Java^TM^.


== Запуск файла исходного кода апплета

Созданный апплет можно запустить из среды IDE. В этом разделе вы узнаете, как это сделать.


=== Сборка и выполнение исходного файла апплета

Щелкните правой кнопкой мыши узел файла MyApplet.java в окне 'Проекты' и выберите в контекстном меню команду 'Запустить файл'. В папке  ``сборки``  создается файл запуска  ``MyApplet.html``  со встроенным апплетом. Его можно увидеть, перейдя в окно "Файлы" (CTRL+2):

image::images/built-project-files.png[]

Апплет запускается в программе просмотра апплета.

image::images/appletviewer.png[]

Формы апплета также отображаются в программе просмотра апплета.

image::images/movie-magic-quiz.png[]


== Внедрение апплета в веб-приложение

Итак, создание апплета завершено. Теперь необходимо предоставить к нему доступ пользователю. Для этого необходимо создать веб-приложение, добавить апплет JAR в путь к его классам, а затем добавить тег апплета в файл HTML веб-приложения.


=== Создание веб-проекта

1. Выберите команду "Файл" > "Новый проект".
2. В категории Java Web выберите 'Веб-приложение'. Нажмите кнопку "Далее".
3. В области "Имя проекта" введите  ``HelloWebApplet`` .
4. В области "Расположение проекта" укажите любую папку на своем компьютере. Нажмите кнопку "Далее".
5. Выберите целевой сервер. Нажмите кнопку "Завершить".


=== Добавление файла JAR апплета в веб-проект

Когда нужно включить файл апплета в формате JAR в веб-проект, можно добавить либо проект Java, содержащий файл JAR file, либо добавить сам файл JAR. Можно выбрать любой из вариантов, однако следует учесть, что при добавлении проекта Java в веб-проект среда IDE запускает сборку апплета при каждой сборке веб-приложения. Таким образом, если вы изменяете апплет в проекте Java, среда IDE собирает новую версию апплета каждый раз при сборке веб-проекта. С другой стороны, если файл JAR апплета не находится в проекте IDE NetBeans, исходный файл апплета не перестраивается при построении веб-проекта.

*Примечание.* Если на этом этапе используется проект  ``HelloApplet``  в IDE файл  ``HelloApplet.jar``  отсутствует. Это нормально. Файл  ``HelloApplet.jar``  будет собран при сборке проекта  ``HelloWebApplet`` .

1. В окне 'Проекты' щелкните правой кнопкой мыши узел проекта HelloWebApplet и выберите 'Свойства' в контекстном меню.
2. Выберите категорию 'Упаковка'.
3. Выполните одно из следующих действий.
* Если апплет находится в проекте Java, нажмите 'Добавить проект' и найдите каталог этого проекта Java. Щелкните Add JAR/Folder ("Добавить JAR/Папку").

*Примечание.* Проекты IDE помечены специальным значком 'Проект NetBeans IDE'.

* Если используемый файл апплета JAR не входит в проект IDE, нажмите 'Добавить файл/папку' и найдите папку с файлом JAR. Нажмите 'Выбрать'.


. Убедитесь, что JAR с исходным файлом апплета отображается в таблице в окне 'Свойства проекта'. Нажмите кнопку "ОК".

По умолчанию файл JAR апплета будет скопирован в библиотеку страницы веб-приложения (папку  ``build/web `` ). Папка  ``build/web ``  является корневым каталогом приложения и отображается в таблице как " ``/`` " в переменной Path в столбце WAR. Вы можете изменить расположение апплета в WAR. Для этого введите новое расположение апплета в переменной Path в столбце WAR.



. Нажмите ОК, чтобы закрыть диалоговое окно 'Свойства проекта'.

При сборке проекта  ``HelloWebApplet``  с помощью команды 'Выполнить > Собрать проект (HelloWebApplet)' главного меню IDE JAR-файл апплета создается в исходном проекте  ``HelloApplet``  и упаковывается в WAR-файл проекта  ``HelloWebApplet`` . Он также добавляется в папку  ``build/web`` . Следить за процессом можно в окне "Результат", а конечный результат можно посмотреть в окне "Файлы".

[.feature]
--
image:images/helloapplet-jar-in-files-small.png[role="left", link="images/helloapplet-jar-in-files.png"]
--


=== Создание и запуск файла JSP или HTML

1. Выполните одно из следующих действий.
* Если необходимо встроить апплет в файл JSP, дважды нажмите стандартный файл  ``index.jsp``  в окне "Свойства". Этот файл создается средой IDE при создании веб-проекта. Файл открывается в редакторе исходного кода.
* Если необходимо внедрить апплет в файл HTML, щелкните правой кнопкой мыши узел проекта HelloWebApplet и выберите 'Создать' > 'Другие' в контекстном меню. В области "Категории" выберите "Web". В области "Типы файлов" выберите HTML. Нажмите кнопку "Далее". Укажите название файла HTML, выберите папку Web (она расположена в нужном месте) и нажмите "Завершить".


. Встройте апплет в файл, добавив следующий тег апплета в любом месте в рамках тегов  ``<body>``  ``</body>`` .

* В файле HTML: [examplecode]# ``<applet code="org.me.hello.MyApplet" archive="HelloApplet.jar"></applet>``  #
* В файле JSP: [examplecode]# ``<applet code="org.me.hello.MyApplet" archive="HelloApplet.jar" width="600" height="480"/>`` #

*Примечания.*

* При добавлении апплета в файл HTML в рамках этой учебной задачи можно игнорировать значок подсказки, который появляется в левом поле.
*  ``org.me.hello.MyApplet``  - полное имя класса апплета.
*  ``HelloApplet.jar``  - файл JAR, содержащий апплет.


. В окне "Проекты" щелкните узел JSP или HTML правой кнопкой мыши и в контекстном меню выберите "Выполнить файл".

Сервер развертывает файл JSP или HTML в браузере среды IDE, установленном по умолчанию.

Вы должны получить результат, аналогичный показанному на иллюстрации (после того как вы разрешили запуск приложения нажатием на кнопку 'Выполнить' в диалоговом окне 'Предупреждение системы безопасности'):

[.feature]
--
image:images/appletinbrowser-small.png[role="left", link="images/appletinbrowser.png"]
--

В случае работы с формами апплетов ваш результат будет похож на следующий:

image::images/movie-magic-quiz-html.png[]


link:/about/contact_form.html?to=3&subject=Feedback:%20Introduction%20to%20Developing%20Applets[+Отправить отзыв по этому учебному курсу+]


