#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
#
# Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
#
# The contents of this file are subject to the terms of either the GNU
# General Public License Version 2 only ("GPL") or the Common
# Development and Distribution License("CDDL") (collectively, the
# "License"). You may not use this file except in compliance with the
# License. You can obtain a copy of the License at
# http://www.netbeans.org/cddl-gplv2.html
# or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
# specific language governing permissions and limitations under the
# License.  When distributing the software, include this License Header
# Notice in each file and include the License file at
# nbbuild/licenses/CDDL-GPL-2-CP.  Sun designates this
# particular file as subject to the "Classpath" exception as provided
# by Sun in the GPL Version 2 section of the License file that
# accompanied this code. If applicable, add the following below the
# License Header, with the fields enclosed by brackets [] replaced by
# your own identifying information:
# "Portions Copyrighted [year] [name of copyright owner]"
#
# Contributor(s):
#
# The Original Software is NetBeans. The Initial Developer of the Original
# Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
# Microsystems, Inc. All Rights Reserved.
#
# If you wish your version of this file to be governed by only the CDDL
# or only the GPL Version 2, indicate your decision by adding
# "[Contributor] elects to include this software in this distribution
# under the [CDDL or GPL Version 2] license." If you do not indicate a
# single choice of license, a recipient has the option to distribute
# your version of this file under either the CDDL, the GPL Version 2 or
# to extend the choice of license to its licensees as provided above.
# However, if you add GPL Version 2 code and therefore, elected the GPL
# Version 2 license, then the option applies only if the new code is
# made subject to such option by the copyright holder.
#

#System file system
Templates/Project/Web=Java Web
Templates/Project/Web/emptyWeb.xml=Web \u61c9\u7528\u7a0b\u5f0f
Templates/Project/Web/importWeb.xml=\u57fa\u65bc\u73fe\u6709\u539f\u59cb\u78bc\u7684 Web \u61c9\u7528\u7a0b\u5f0f

#NewWebProjectWizardIterator
LBL_WizardStepsCount={0}/{1}
LAB_ConfigureSourceRoots=\u73fe\u6709\u539f\u59cb\u78bc\u548c\u7a0b\u5f0f\u5eab
#LBL_NPW1_DefaultProjectName=WebApplication{0}
LBL_IW_LocationSrcDesc=<html>\u9078\u64c7\u5305\u542b Web \u61c9\u7528\u7a0b\u5f0f\u6240\u6709\u539f\u59cb\u78bc\u7684\u8cc7\u6599\u593e\u3002</html>


# A11Y Panels
ACS_NWP1_NamePanel_A11YDesc=\u5c08\u6848\u540d\u7a31\u548c\u4f4d\u7f6e\u9762\u677f
ACS_IW_SourcesPanel_A11YDesc=\u52a0\u5165\u73fe\u6709\u539f\u59cb\u78bc\u9762\u677f
ACS_NWP2_Frameworks_A11YDesc=\u652f\u63f4\u7684\u6846\u67b6\u9762\u677f

#PanelSupportedFrameworksVisual
LBL_NWP2_Frameworks=\u6846\u67b6
LBL_NWP2_Select_Frameworks=\u9078\u64c7\u8981\u5728 Web \u61c9\u7528\u7a0b\u5f0f\u4e2d\u4f7f\u7528\u7684\u6846\u67b6\u3002
LBL_NWP2_ConfigureFramework={0} \u8a2d\u5b9a
ACS_LBL_NWP2_FrameworksTable_A11YDesc=\u5f9e\u6e05\u55ae\u4e2d\u9078\u64c7\u6846\u67b6\u3002
MNE_Frameworks=M
TXT_NewWebApp=Web \u61c9\u7528\u7a0b\u5f0f

#PanelSourceFolders
MSG_WebPagesMandatory=[\u7db2\u9801] \u6b04\u4f4d\u662f\u5fc5\u8981\u7684\u3002
MSG_WebPagesFolderDoesNotExist=\u300c\u7db2\u9801\u300d\u8cc7\u6599\u593e\u4e0d\u5b58\u5728\u3002
MSG_JavaSourcesMandatory=[Java \u539f\u59cb\u78bc] \u6b04\u4f4d\u662f\u5fc5\u8981\u7684\u3002
MSG_JavaSourcesFolderDoesNotExist=\u300cJava \u539f\u59cb\u78bc\u300d\u8cc7\u6599\u593e\u4e0d\u5b58\u5728\u3002
MSG_LibrariesFolderDoesNotExist=\u300c\u7a0b\u5f0f\u5eab\u300d\u8cc7\u6599\u593e\u4e0d\u5b58\u5728\u3002
MSG_WebPagesFolderOverlapsProjectFolder=\u300c\u7db2\u9801\u300d\u8cc7\u6599\u593e\u8207\u300c\u5c08\u6848\u300d\u8cc7\u6599\u593e\u91cd\u758a\u3002
MSG_WebInfCorrupted=\u5728 {0} \u4e2d\u627e\u4e0d\u5230 WEB-INF \u76ee\u9304\u3002
MSG_WebInfMandatory=WEB-INF \u5167\u5bb9\u8cc7\u6599\u593e\u662f\u5fc5\u8981\u7684\u3002
MSG_WebInfFolderDoesNotExist=WEB-INF \u5167\u5bb9\u8cc7\u6599\u593e\u4e0d\u5b58\u5728\u3002
MSG_FileNotFound=<html>Web \u61c9\u7528\u7a0b\u5f0f\u7684\u90e8\u7f72Descriptor (WEB-INF/web.xml) \u4e0d\u5b58\u5728\u3002\u5fc5\u9808\u5efa\u7acb\u8a72Descriptor\uff0c\u5426\u5247\u7121\u6cd5\u57f7\u884c Web \u61c9\u7528\u7a0b\u5f0f\u3002</html>

#New project wizard - steps
LBL_NWP1_ProjectTitleName=\u540d\u7a31\u548c\u4f4d\u7f6e
LBL_NWP1_ProjectServer=\u4f3a\u670d\u5668\u548c\u8a2d\u5b9a

#Import wizard - steps
TXT_WebExtSources=\u57fa\u65bc\u73fe\u6709\u539f\u59cb\u78bc\u7684 Web \u5c08\u6848
LBL_IW_Step1=\u540d\u7a31\u548c\u4f4d\u7f6e
LBL_IW_Step2=\u73fe\u6709\u539f\u59cb\u78bc\u548c\u7a0b\u5f0f\u5eab

#Import wizard - locations within the web application
LBL_IW_ImportLocationsTitle=\u73fe\u6709\u539f\u59cb\u78bc\u548c\u7a0b\u5f0f\u5eab
LBL_IW_LocationDesc_Label=<html>\u6307\u5b9a\u5305\u542b \u7db2\u9801\u3001\u7a0b\u5f0f\u5eab\u3001\u539f\u59cb\u78bc\u5957\u4ef6\u548c JUnit \u6e2c\u8a66\u5957\u4ef6\u7684\u73fe\u6709\u8cc7\u6599\u593e\u3002</html>
LBL_IW_WebPagesLocation_Label=\u7db2\u9801\u8cc7\u6599\u593e\uff1a
LBL_IW_JavaSourcesLocation_Label=*Java \u539f\u59cb\u78bc\uff1a
LBL_IW_LibrariesLocation_Label=\u7a0b\u5f0f\u5eab\u8cc7\u6599\u593e\uff1a
LBL_IW_Required_Label=* \u5fc5\u8981\u6b04\u4f4d
LBL_IW_SelectWebPagesLocation=\u7db2\u9801\u4f4d\u7f6e
LBL_IW_SelectJavaSourcesLocation=Java \u539f\u59cb\u78bc\u4f4d\u7f6e
LBL_IW_SelectLibrariesLocation=\u7a0b\u5f0f\u5eab\u4f4d\u7f6e

LBL_IW_WebPagesLocationDesc=\u5305\u542b HTML\u3001JSP \u548c\u975c\u614b\u6a94\u6848\u7684\u76ee\u9304
LBL_IW_JavaSourcesLocationDesc=\u5305\u542b Java \u539f\u59cb\u78bc\u985e\u5225\u8def\u5f91\u6839 (\u5305\u542b .java\u3001.properties \u7b49) \u7684\u76ee\u9304\u3002
LBL_IW_LibrariesLocationDesc=Web \u61c9\u7528\u7a0b\u5f0f\u985e\u5225\u8def\u5f91\u6240\u9700\u7684\u7a0b\u5f0f\u5eab

LBL_IW_WebPagesLocation_LabelMnemonic=W
LBL_IW_JavaSourcesLocation_LabelMnemonic=J
LBL_IW_LibrariesLocation_LabelMnemonic=L
LBL_IW_Description_LabelMnemonic=\n

ACS_LBL_IW_WebPagesLocation_A11YDesc=\u5305\u542b HTML\u3001JSP \u548c\u975c\u614b\u6a94\u6848\u7684\u76ee\u9304
ACS_LBL_IW_JavaSourcesLocation_A11YDesc=\u5305\u542b Java \u539f\u59cb\u78bc\u985e\u5225\u8def\u5f91\u6839 (\u5305\u542b .java\u3001.properties \u7b49) \u7684\u76ee\u9304\u3002
ACS_LBL_IW_LibrariesLocation_A11YDesc=Web \u61c9\u7528\u7a0b\u5f0f\u985e\u5225\u8def\u5f91\u6240\u9700\u7684\u7a0b\u5f0f\u5eab
ACS_LBL_IW_WebPagesLocationBrowse_A11YDesc=\u7db2\u9801\u700f\u89bd\u6309\u9215
ACS_LBL_IW_JavaSourcesLocationBrowse_A11YDesc=Java \u539f\u59cb\u78bc\u700f\u89bd\u6309\u9215
ACS_LBL_IW_LibrariesLocationBrowse_A11YDesc=\u7a0b\u5f0f\u5eab\u700f\u89bd\u6309\u9215
ACS_LBL_IW_LocationDescription_A11YDesc=\u4f4d\u7f6e\u63cf\u8ff0

LBL_BrowseLocation_MNE=R
LBL_BrowseProjectFolder_MNE=E
LBL_WebPagesFolder_MNE=O

LBL_WebPagesLocation_J2EESpecLevel_Label=Java EE \u7248\u672c\uff1a
LBL_WebPagesLocation_J2EESpecLevel_LabelMnemonic=E

MSG_WebXmlCorrupted=Web \u6a21\u7d44\u7684\u90e8\u7f72Descriptor\u5df2\u640d\u58de

#delete existing class files
MSG_FoundClassFiles=\u6307\u5b9a\u7684 Java \u539f\u59cb\u78bc\u8cc7\u6599\u593e\u4e2d\u5305\u542b\u7de8\u8b6f\u7684\u985e\u5225\u6a94\u6848 (*.class)\u3002\n\u56e0\u70ba IDE \u5c07\u5728\u300cbuild\u300d\u8cc7\u6599\u593e\u4e2d\u7522\u751f\u7de8\u8b6f\u7684\u985e\u5225\u6a94\u6848\uff0c\u6240\u4ee5\u5efa\u8b70\u60a8\u522a\u9664\u73fe\u6709\u7684\u7de8\u8b6f\u985e\u5225\u6a94\u6848\u3002\n\u662f\u5426\u8981\u7acb\u5373\u79fb\u9664\u9019\u4e9b\u985e\u5225\u6a94\u6848\uff1f 
MSG_FoundClassFiles_Title=\u65b0\u589e\u57fa\u65bc\u73fe\u6709\u539f\u59cb\u78bc\u7684 Web \u5c08\u6848
TXT_DeleteOption=\u522a\u9664
TXT_KeepOption=\u5ffd\u7565
TXT_CancelOption=\u53d6\u6d88

# multiple src roots
CTL_AddFolder=\u52a0\u5165\u8cc7\u6599\u593e...
CTL_RemoveFolder=\u79fb\u9664
LBL_ProjectNameAndLocationLabel=\u6307\u5b9a\u65b0\u5c08\u6848\u7684\u540d\u7a31\u548c\u4f4d\u7f6e\u3002
LBL_NWP1_BrowseLocation_Button3=\u700f\u89bd(&O)...

#PanelSourceFolders
LBL_BrowseWebPagesLocation_Button=\u700f\u89bd...
LBL_BrowseLibrariesLocation_Button=\u700f\u89bd...
MNE_BrowseLibrariesLocation=E
CTL_AddSourceRoot=\u700f\u89bd\u539f\u59cb\u78bc\u5957\u4ef6\u8cc7\u6599\u593e
CTL_AddTestRoot=\u700f\u89bd\u6e2c\u8a66\u5957\u4ef6\u8cc7\u6599\u593e
CTL_SourceRoots=\u539f\u59cb\u78bc\u5957\u4ef6\u8cc7\u6599\u593e\uff1a
AD_SourceRoots=N/A
CTL_TestRoots=\u6e2c\u8a66\u5957\u4ef6\u8cc7\u6599\u593e\uff1a
AD_TestRoots=N/A
MNE_AddSourceFolder=A
AD_AddSourceFolder=N/A
MNE_RemoveSourceFolder=R
AD_RemoveSourceFolder=N/A
MNE_AddTestFolder=d
AD_AddTestFolder=N/A
MNE_RemoveTestFolder=e
AD_RemoveTestFolder=N/A
MNE_SourceRoots=S
MNE_TestRoots=T
AN_PanelSourceFolders=N/A
AD_PanelSourceFolders=N/A
TXT_RootOwnedByProject={0} (\u6b78 {1} \u6240\u6709)

ACS_LBL_NWP1_SourceStructureComboBox_A11YDesc=Web \u6a21\u7d44\u7684\u6a94\u6848\u548c\u8cc7\u6599\u593e\u914d\u7f6e\u3002

ACSD_WebPagesFolder=\u63d0\u4f9b Web \u6839\u8cc7\u6599\u593e\u7684\u8def\u5f91
ACSD_WebInf=\u63d0\u4f9b Web inf \u8cc7\u6599\u593e\u7684\u8def\u5f91
ACSD_LibrariesFolder=\u63d0\u4f9b\u7a0b\u5f0f\u5eab\u8cc7\u6599\u593e

ACSD_BrowseWebPageFolder=\u6309\u4e00\u4e0b\u53ef\u700f\u89bd Web \u6839\u8cc7\u6599\u593e
ACSD_BrowseWebInf=\u6309\u4e00\u4e0b\u53ef\u700f\u89bd Web inf \u8cc7\u6599\u593e
ACSD_BrowseLibrariesFolder=\u6309\u4e00\u4e0b\u53ef\u700f\u89bd\u7a0b\u5f0f\u5eab\u8cc7\u6599\u593e

ACSD_FolderList=\u8cc7\u6599\u593e\u6e05\u55ae

# NewWebProjectWizardIterator progress bar
LBL_NewWebProjectWizardIterator_WizardProgress_CreatingProject=<html>\u5efa\u7acb\u65b0\u5c08\u6848</html>
LBL_NewWebProjectWizardIterator_WizardProgress_PreparingToOpen=<html>\u6e96\u5099\u8981\u958b\u555f\u7684\u65b0\u5c08\u6848</ html>
LBL_NewWebProjectWizardIterator_WizardProgress_AddingFrameworks=<html>\u52a0\u5165\u9078\u53d6\u7684\u6846\u67b6</html>

LBL_DeploymentDescriptorFolder_Label=WEB-INF \u5167\u5bb9\uff1a
MNE_DeploymentDescriptorFolder=I
MNE_BrowseWebInfLocation=B

# UI logging of creating new web application
# {0} server id
# {1} server instance id
# {2} JavaEE version
# {3} source level
# {4} source structure
# {5} the first choosed framework
# {6} the second choosed framework
# {7} ....
UI_WEB_PROJECT_CREATE=\u65b0\u5efa Web \u61c9\u7528\u7a0b\u5f0f [\u76ee\u6a19\u4f3a\u670d\u5668\uff1a{0}\u3001JavaEE \u7248\u672c\uff1a{2}\u3001\u539f\u59cb\u78bc\u5c64\u7d1a\uff1a{3}\u3001\u539f\u59cb\u78bc\u7d50\u69cb\uff1a{4}]

# Usage Logging
# {0} server name
# {1} JavaEE version
# {2} source level
# {3} source structure
# {4} list of used frameworks
USG_PROJECT_CREATE_WEB=\u65b0\u5efa Web \u61c9\u7528\u7a0b\u5f0f [\u76ee\u6a19\u4f3a\u670d\u5668\uff1a{0}\u3001JavaEE \u7248\u672c\uff1a{1}\u3001\u539f\u59cb\u78bc\u5c64\u7d1a\uff1a{2}\u3001\u539f\u59cb\u78bc\u7d50\u69cb\uff1a{3}]

PanelSourceFolderes.browseWebInf=\u700f\u89bd...

MSG_IllegalProjectFolder=\u5c08\u6848\u8cc7\u6599\u593e\u5fc5\u9808\u4f4d\u65bc\u5957\u4ef6\u6240\u5728\u7684\u8cc7\u6599\u593e\u4e4b\u5916\u3002
MSG_IllegalSources=\u539f\u59cb\u78bc\u5957\u4ef6\u8cc7\u6599\u593e {0} \u4e0d\u5b58\u5728\u3002
MSG_IllegalTests=\u6e2c\u8a66\u5957\u4ef6\u8cc7\u6599\u593e {0} \u4e0d\u5b58\u5728\u3002
