// 
//     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.
//

= 添加对 Web 框架的支持
:jbake-type: tutorial
:jbake-tags: tutorials 
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: 添加对 Web 框架的支持 - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, 添加对 Web 框架的支持

本文档提供了有关如何在 NetBeans IDE 中添加 Web 框架支持的一般描述。提供的步骤显示如何使用插件管理器在 IDE 中安装 Web 框架插件，从而添加支持。安装该插件后，创建 Web 项目时将能够在新建项目向导中选择相应的框架。您创建的新 Web 项目将包含特定于所选框架的必需基础结构。

添加特定 Web 框架支持的最简便方法是使用 IDE 的插件管理器来安装 NetBeans 插件（如果插件可用）。如果您在使用 IDE 时能够访问 Internet，这就非常方便。link:http://plugins.netbeans.org/PluginPortal/[+NetBeans 插件门户+]中也提供了多个 Web 框架的插件。如果您不能对 Internet 进行常规访问，则可以在适当时下载插件模块（例如，通过插件门户），然后再将其安装到 IDE 中。

在本教程中，您将通过从 NetBeans 插件门户中下载插件并使用插件管理器安装该插件来添加对 Apache Struts 2 框架的支持。

*注：*IDE 包支持 link:../../docs/web/jsf20-support.html[+JavaServer Faces 2.x+] 以及 link:../../docs/web/quickstart-webapps-struts.html[+Struts 1.3.10+] 和 link:../../docs/web/quickstart-webapps-spring.html[+Spring 3.x 和 4.x+] 框架。捆绑框架的具体版本取决于 IDE 的版本。


image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"]


*要学完本教程，您需要具备以下软件和资源。*

|===
|软件或资源 |要求的版本 

|link:https://netbeans.org/downloads/index.html[+NetBeans IDE，Java EE 包+] |7.2, 7.3, 7.4, 8.0 

|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java 开发工具包 (JDK)+] |版本 7 或 8 
|===

*注：*

* Web 和 Java EE 安装使您能够有选择地安装 Apache Tomcat 7.x servlet 容器和 GlassFish Server 3.1。您必须安装其中之一才能学完本教程，具体取决于您打算使用的框架。
* 您还必须连接到 Internet，以便下载所需的插件和/或通过 IDE 的插件管理器对其进行访问。


== 安装框架支持插件

您可以添加对特定框架的支持，方法是将相应的框架支持插件安装到 IDE 中。为此，您可以从外部站点（如 link:http://plugins.netbeans.org/PluginPortal/[+NetBeans 插件门户+]）下载插件模块，然后通过插件管理器安装插件；或者，如果插件是由更新中心维护的，则可以在 IDE 的插件管理器中注册该更新中心，然后直接通过插件管理器下载和安装插件。

* <<manually,手动下载>>
* <<updateCenter,通过更新中心安装>>

有些插件可从 link:http://plugins.netbeans.org/PluginPortal/[+NetBeans 插件门户+]之类的站点中下载，或直接从插件开发者的站点中下载。下表提供了位置链接，在这些位置可为框架下载某些插件。

|===
|框架 |插件位置 |下载位置 

|link:http://struts.apache.org/[+Apache Struts 2+] |link:http://java.net/projects/nbstruts2support/[+http://java.net/projects/nbstruts2support/+] |link:http://plugins.netbeans.org/plugin/39218/struts2-support-repack-for-nb-7-0[+http://plugins.netbeans.org/plugin/39218/struts2-support-repack-for-nb-7-0+] 

|link:http://wicket.apache.org/[+Wicket+] |link:http://nbwicketsupport.dev.java.net/[+https://nbwicketsupport.dev.java.net+] |link:http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3586[+ http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3586+] 

|link:http://www.icefaces.org/main/home/[+ICEfaces 2.0+] |link:http://www.icefaces.org/main/home/[+http://www.icefaces.org/main/home/+] |link:http://www.icefaces.org/main/downloads/[+http://www.icefaces.org/main/downloads/+] 
|===


=== 下载和安装 Apache Struts2 支持插件

为了便于说明，本部分将介绍如何从 NetBeans 插件门户下载和安装link:http://plugins.netbeans.org/plugin/39218/struts2-support-repack-for-nb-7-0[+用于 NB 7.0 的 Apache Struts2 Support Repack+] 插件。此插件将安装用于 Apache Struts 2 的库和 UI 支持。

*注：*此插件将重新打包 link:http://java.net/projects/nbstruts2support/[+NetBeans Struts2 支持插件+]，因为尚未针对 NetBeans IDE 7.0 更新 NetBeans Struts2 支持插件。有关每个插件的其他信息，请参见各自的插件详细信息页。

1. 从 link:http://plugins.netbeans.org/PluginPortal/[+NetBeans 插件门户+]上的link:http://plugins.netbeans.org/plugin/39218/struts2-support-repack-for-nb-7-0[+用于 NB 7.0 的 Struts2 Support Repack 页+]中下载包含所需 Apache Struts 2 插件的 zip 档案文件并将内容解压缩到计算机中。

在解压缩内容时，您将看到该档案文件包含三个文件。

*  ``org-netbeans-modules-web-frameworks-struts2.nbm`` 
*  ``org-netbeans-modules-web-frameworks-struts2lib218.nbm`` 
*  ``org-netbeans-modules-web-frameworks-struts2lib20011.nbm`` 

NetBeans 插件可由  ``.nbm``  扩展名来标识。


[start=2]
. 从 IDE 的主菜单中，选择 "Tools"（工具）> "Plugins"（插件）以打开插件管理器。

[start=3]
. 选择 "Downloaded"（已下载）标签，然后单击 "Add Plugins"（添加插件）按钮。

[start=4]
. 在 "Add Plugins"（添加插件）对话框中，导航至包含插件的目录并选择 NetBeans 插件。单击 "Open"（打开）。

image::images/plugin-archive-contents.png[title="zip 档案文件包含 NetBeans 插件"]

按住 Ctrl 键可选择多个项目。


[start=5]
. 在插件管理器中，选择每个 Struts2 插件。

插件管理器的右窗格中将显示选定插件的描述。

[.feature]
--

image::images/add-plugins-sm.png[role="left", link="images/add-plugins.png"]

--

[start=6]
. 单击 "Install"（安装）以打开 "NetBeans IDE Installer"（NetBeans IDE 安装程序），然后单击 "Next"（下一步）并接受许可证协议。

*注：*如果您接收到验证警告，请单击“继续”以安装该插件。在尝试安装未签名的插件时，将会出现验证警告。通常情况下，您可以信任所有插件，但是如果安装未签名的插件，则会带来一定的风险。


[start=7]
. 重新启动 IDE 使更改生效。

在安装插件并重新启动 IDE 之后，可以通过打开插件管理器、单击 "Installed"（已安装）标签并在已安装插件的列表中查找插件来确认插件已安装。


=== 通过更新中心安装

如果框架支持插件是由更新中心维护的，您应该考虑将该更新中心安装到 IDE 中。这样，随后便可以直接通过插件管理器安装该框架支持插件。另外，插件管理器还会记录对更新中心维护的插件进行的所有更新，从而提供简单且有效的方法来使已安装的插件保持最新。

默认情况下，IDE 中已注册了各种更新中心。要查看当前注册的更新中心的列表，请打开插件管理器（"Tools"（工具）> "Plugins"（插件）），然后选择 "Settings"（设置）标签。

[.feature]
--

image::images/pluginsmanager-settings-sm.png[role="left", link="images/pluginsmanager-settings.png"]

--

如果要注册新的更新中心，可单击 "Settings"（设置）标签中的 "Add"（添加）按钮，然后在 "Update Center Customizer"（更新中心定制器）中提供详细信息。

image::images/uc-customizer.png[title=""Update Center Customizer"（更新中心定制器）对话框"] 


=== 注册 NetBeans 插件门户更新中心

向 IDE 注册的插件门户更新中心默认情况下包含由社区贡献并已知与所安装的 IDE 版本兼容的插件的子集。如果要使用插件管理器浏览 link:http://plugins.netbeans.org/[+NetBeans 插件门户+]提供的所有插件，可执行以下步骤来安装插件，以便将 NetBeans 插件门户更新中心添加到已注册更新中心的列表中。

1. 下载 link:http://plugins.netbeans.org/plugin/1616/plugin-portal-update-center[+NetBeans 插件门户更新中心插件+]。
2. 在插件管理器中打开 "Downloaded"（已下载）标签。
3. 单击 "Add Plugins"（添加插件）并查找已下载的  ``1252666924798_org-netbeans-pluginportaluc.nbm``  文件。单击 "Install"（安装）。

安装插件后，NetBeans 插件门户更新中心将添加到插件管理器 "Settings"（设置）标签的已注册更新中心列表中

*注：*您可以通过在 "Settings"（设置）标签的 "Active"（活动）列中取消选中更新中心对应的复选框，来停用更新中心。

[.feature]
--

image::images/portal-uc-plugin-sm.png[role="left", link="images/portal-uc-plugin.png"]

--

如果单击 "Available Plugins"（可用插件）标签，则可看到，社区向 NetBeans 插件门户贡献的所有插件均已添加到可用插件的列表中。

单击 "Reload Catalog"（重新加载目录）以更新插件列表。

[.feature]
--

image::images/portal-uc-list-sm.png[role="left", link="images/portal-uc-list.png"]

--

通过单击列标题可对列表进行排序，通过在 "Search"（搜索）字段中输入搜索词可以过滤列表。

*插件门户更新中心列出了 link:http://plugins.netbeans.org/[+NetBeans 插件门户+]提供的所有插件。许多插件都将用于 IDE 的早期版本，将与您正在使用的 IDE 版本不兼容。为其他版本的 IDE 安装插件可能会导致 IDE 安装的行为不可靠。*在许多情况下（但并非所有情况下），将会显示一条消息，通知您是否无法安装插件。与所有软件的安装相同，在尝试安装插件之前，应格外谨慎并仔细阅读文档。


== 在 IDE 中使用框架支持

IDE 中的框架支持通常特定于您所使用的框架。例如，Struts2 支持提供的向导使您可在 Struts 配置文件中轻松创建常用的 Struts 类和代码完成。

您可以在创建应用程序时通过新建项目向导将框架支持添加到 Web 应用程序中，也可以将支持集成到现有应用程序中。

* <<newProject,创建具有框架支持的新项目>>
* <<existingProject,将框架支持添加到现有项目中>>


=== 创建具有框架支持的新项目

1. 从主菜单中，选择 "File"（文件）> "New Project"（新建项目）（Ctrl-Shift-N 组合键；在 Mac 上为 ⌘-Shift-N 组合键）。此时将打开新建项目向导。在 "Categories"（类别）下选择 "Web"，然后在 "Projects"（项目）下选择 "Web Application"（Web 应用程序）。单击 "Next"（下一步）。
2. 在 "Project Name"（项目名称）中键入名称，然后指定该项目在计算机上的位置。
3. 逐步执行向导，并接受任何默认设置。通过选择已在 IDE 中注册的服务器（即 GlassFish Server 或 Tomcat），指定用于部署应用程序的服务器。
4. 在新建项目向导的 "Frameworks"（框架）面板中，选择要添加的框架。单击 "Finish"（完成）。 

image::images/newproject-wizard-frameworks-sm.png[title="新建项目向导的 "Frameworks"（框架）面板中列出的 Struts 2 支持"]

在此示例中，在 "Frameworks"（框架）面板中选择了对 Struts2 框架的支持。您会看到，现在 "Frameworks"（框架）面板提供了选择 Struts 1.3.8（与 IDE 捆绑在一起）或 Struts2（通过安装插件来添加）的选项。Struts 2 支持插件将 "Struts2" 选项添加到新建项目向导中，并显示具有 "Configuration"（配置）和 "Libraries"（库）选项的标签。"Configuration"（配置）标签提供用于在项目中创建示例页的选项。通过 "Libraries"（库）标签可以选择要添加到类路径的 Struts2 库的版本。

单击 "Finish"（完成），此时 IDE 将创建 Web 应用程序。该向导创建的其他文件将因框架而异。在此示例中，向导在 "Source Packages"（源包）文件夹中创建  ``struts.xml``  XML 配置文件并将所需的 Struts2 库添加到类路径中。向导还自动向该  ``web.xml``  中添加一个 Servlet 过滤器类和过滤器映射。

image::images/project-structure-frameworks.png[title=""Projects"（项目）窗口中显示的 Struts Web 应用程序的逻辑结构"]  


=== 将框架支持添加到现有项目中

如果已有 Web 项目并且要向该项目中添加对框架的支持，则可使用 "Project Properties"（项目属性）对话框添加 IDE 中提供的框架。

1. 在 "Projects"（项目）窗口中，右键单击 Web 应用程序项目的节点，然后选择 "Properties"（属性）打开 "Project Properties"（项目属性）窗口。
2. 在类别列表中选择 "Frameworks"（框架）。

选择 "Frameworks"（框架）时，右面板将显示 "Used Frameworks"（使用的框架）文本区域，如果应用程序未使用框架，则该文本区域为空。


[start=3]
. 单击 "Add"（添加）按钮，然后选择要使用的框架并单击 "OK"（确定）。

image::images/properties-add-framework.png[title="从 &quot;Project Properties&quot;（项目属性）窗口打开的 &quot;Add Framework&quot;（添加框架）对话框中选择的 JavaServer Faces 框架"]

[start=4]
. 根据所选框架，可以在 "Project Properties"（项目属性）窗口中进一步指定特定于框架的配置设置或组件。

image::images/add-icefaces.png[title="将 ICEfaces 组件套件的库添加到项目中"]

例如，如果要指定 ICEfaces 组件套件，则可以在 "Project Properties"（项目属性）窗口的 "Components"（组件）标签中选择 "ICEfaces"，然后指定 ICEfaces 库。

*注：*IDE 中不包含 JSF 组件的库。要使用组件套件，您需要下载所需的库，然后创建一个 NetBeans 库，您随后可以在 "Project Properties"（项目属性）窗口中将该库添加到项目类路径中。


[start=5]
. 单击 "OK"（确定）以确认您的选择，然后关闭 "Project Properties"（项目属性）窗口。项目中将添加特定于框架的工件和库，您可以在 "Projects"（项目）窗口中对其进行检查。
link:/about/contact_form.html?to=3&subject=Feedback:%20Adding%20Web%20Framework%20Support[+ 发送有关此教程的反馈意见+]



== 另请参见

本文档描述了如何在 NetBeans IDE 中添加对 Web 框架的支持。它介绍了如何通过手动下载以及通过 IDE 插件管理器中的更新中心来安装框架支持插件。此外，还说明如何将 IDE 支持的框架添加到新的 Web 应用程序项目和现有项目中。

本教程重点介绍如何添加 Struts2 框架。如果要了解此框架提供的其他功能，请参见 link:../../docs/web/quickstart-webapps-struts.html[+Struts Web 框架简介+]。

有关在 NetBeans IDE 中使用其他 Web 框架的更多信息，请参见以下资源：

* link:../../docs/web/quickstart-webapps-spring.html[+Spring Web 框架简介+]
* link:../../docs/web/quickstart-webapps-struts.html[+Struts Web 框架简介+]
* link:../../docs/web/quickstart-webapps-wicket.html[+Wicket Web 框架简介+]
