###############################################################################
# Copyright (c) 2003, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors:
# IBM Corporation - initial API and implementation
###############################################################################
Add_Filter_Mapping_Title_UI_=Add Filter Mapping
Edit_Filter_Mapping_Title_UI_=Edit Filter Mapping
FILTER_MAPPING=Filter Mapping
DISPATCHER_R=R
DISPATCHER_F=F
DISPATCHER_I=I
DISPATCHER_E=E
LISTENER=Listener
Select_Dispatchers_UI_=Select Dispatchers
Container_Selection_UI_=Folder Selection
Choose_a_Container__UI_=Choose a Folder:
Container__UI_=Folder:
Browse..._UI_=Browse...
Superclass_selection_UI_=Superclass selection
Choose_a_superclass_UI_=Choose a superclass
Add..._UI_=Add...
Remove_UI_=Remove
No_packages_to_choose_from_UI_=No packages to choose from.
Error_EXC_=IWAE0015E Error
Specify_a_name_and_package_UI_=Create a new Servlet class.
Which_method_stubs_would_y_UI_=Which method stubs would you like to create?
__Add_to_web.xml?_UI_=Add to web.xml?
__Add...___UI_=Add
__Delete___UI_=Delete
Cancel_UI_=Cancel
New_UI_=New
None_UI_=None
Create_the_Servlet_Class_UI_=Create the Servlet Class
Define_the_Servlet_in_the__UI_=Define the Servlet in the Deployment Descriptor (web.xml) File
Identify_any_information_t_UI_=Identify any information that should be inserted into the Deployment Descriptor (web.xml) file for the servlet.
Create_Two_Children_UI_=Create Two Children
Create_Child_UI_=Create Child
Description_UI_=Description
2concat_UI_=Create a new child for the selected {0}.
4concat_UI_=Create a child of type {0} for the selected {1}.
6concat_UI_=Create {0}
7concat_UI_=Create two new children for the selected {0}.
8concat_UI_=Create two new children of type {0} for the selected {1}.
9concat_UI_=Create Two {0}s
11concat_UI_=AuthConstraint {0}
12concat_UI_=ContextParam {0}
13concat_UI_=ErrorPage {0}
14concat_UI_=Error Code: {0}
15concat_UI_=Exception: {0}
52concat_UI_=FormLoginConfig {0}
16concat_UI_=FormLoginConfig {0}
17concat_UI_=HTTPMethodType {0}
18concat_UI_={0} = {1}
21concat_UI_=LoginConfig {0}
22concat_UI_=MimeMapping {0}
23concat_UI_=RoleNameType {0}
24concat=Create a child of type WebResourceCollection for the selected {0}.
26concat_UI_=Create a child of type InitParam for the selected {0}.
28concat_UI_={0} -> {1}
31concat_UI_=SessionConfig {0}
32concat_UI_=TagLibRef {0}
33concat_UI_=URLPatternType {0}
34concat_UI_=UserDataConstraint {0}
35concat_UI_=Create a child of type ContextParam for the selected {0}.
37concat_UI_=Create a child of type URLPatternType for the selected {0}.
38concat_UI_=WebResourceCollection {0}
40concat_UI_=JSPType {0}
41concat_UI_=ServletType {0}
42concat_UI_=Create a child of type WelcomeFile for the selected {0}.
45concat_ERROR_=IWAE0016E Error writing to web.xml:{0}
50concat_UI_={0} Change
New_param_UI_=New param
value_UI_=value
New_init_param_UI_=New init param
(New_Security_Role)_UI_=(New Security Role)
New_security_role_UI_=New security role
(New_Servlet)_UI_=(New Servlet)
packagename.classname_UI_=packagename.classname
New_servlet_UI_=New servlet
/url/*_UI_=/url/*
New_servlet_mapping_UI_=New servlet mapping
(New_filename)_UI_=(New filename)
New_welcome_file_UI_=New welcome file
New_welcome_file_list_UI_=New welcome file list
Problems_Opening_Editor_ERROR_=IWAE0017E Problems Opening Editor
Large_Icon_Chooser_Dialog_UI_=Large Icon Chooser Dialog
Small_Icon_Chooser_Dialog_UI_=Small Icon Chooser Dialog
Browse..._UI__UI_=Browse...
Value__UI_=Value:
Description_UI__UI_=Description
Error_EXC__ERROR_=IWAE0018E Error
root_undef_ERROR_=IWAE0019E root undef
Package__UI_=Package:
(default)_UI_=(default)
Servlet_Name__UI_=Servlet Name:
Superclass__UI_=Superclass:
Interfaces__UI_=Interfaces:
Modifiers__UI_=Modifiers:
Use_Single_Thread_Model_UI_=Use Single Thread Model
Options__UI_=Options:
Package_Selection_UI_=Package Selection
Choose_a_package__UI_=Choose a package:
Superinterfaces_Selection_UI_=Superinterfaces Selection
Choose_interfaces_UI_=Choose interfaces
Create_the_Servlet_Class_UI__UI_=Create the Servlet Class
Inherited_abstract_methods_UI_=Inherited abstract methods
Constructors_from_supercla_UI_=Constructors from superclass
Mappings__UI_=Mappings:
URL_UI_=URL
URL__UI_=URL:
Add_Mapping_UI_=Add Mapping
Display_Name__UI_=Display name:
Init_Parameters__UI_=Init Parameters:
Initialization_parameter_UI_=Initialization parameter
Value_UI_=Value
Parameter_Name__UI_=Parameter Name:
Parameter_Value__UI_=Parameter Value:
Add_Initialization_Paramet_UI_=Add Initialization Parameter
OK_UI_=OK
(default_package)_UI_=(default package)
Authorized_Roles_UI_=Authorized roles
Edit..._UI_=Edit...
(New_web_resource_collecti_UI_=(New web resource collection)
New_web_resource_collectio_UI_=New web resource collection
Delete_web_resource_collec_UI_=Delete web resource collection
Web_Resource_Collection_UI_=Web resource collection
Web_Resource_Collections_UI_=Web Resource Collections
New_UI__UI_=Add
Delete_UI_=Remove
User_Data_Constraint_UI_=User data constraint
New_security_constraint_UI_=New security constraint
Transport_guarentee_change_UI_=Transport guarentee change
Delete_security_constraint_UI_=Delete security constraint
Security_constraints_UI_=Security constraints
Name_UI_=Name
(New_Web_Resource_Collecti_UI_=(New Web Resource Collection)
Choose_a_JSP_UI_=Choose a JSP
Select_a_JSP_file_UI_=Select a JSP file
Choose_a_servlet_UI_=Choose a servlet
Select_a_servlet_class_UI_=Select a servlet class
(New_URL)_UI_=(New URL)
Icon_change_UI_=Icon change
Authorized_Roles__UI_=Authorized roles:
Delete_servlet_mappings_UI_=Delete servlet mappings
Type__UI_=Type:
Servlet_class_UI_=Servlet class
JSP_file_UI_=JSP file
Display_name__UI_=Display name:
Description__UI_=Description:
Initialization__UI_=Initialization...
Icons__UI_=Icons...
Display_name_change_UI_=Display name change
Description_change_UI_=Description change
Web_type_change_UI_=Web type change
URL_Mappings__UI_=URL mappings:
New..._UI_=New...
Add_UI_=Add
Delete_servlets_UI_=Delete servlets
Servlets_UI_=Servlets
(New_URI)_UI_=(New URI)
/WEB-INF/tlds/(taglib.tld)_UI_=/WEB-INF/tlds/(taglib.tld)
New_taglib_UI_=New taglib
Delete_taglibs_UI_=Delete taglibs
URI_UI_=URI
Location_UI_=Location
(New_ContextParameter)_UI_=(New ContextParameter)
New_context_parameter_UI_=New context parameter
Context_parameters__UI_=Context parameters:
Context_Parameter_Name_UI_=Context Parameter Name
(New_Extension)_UI_=(New Extension)
New_mime_mapping_UI_=New mime mapping
Delete_mime_mappings_UI_=Delete mime mappings
Session_time_out__UI_=Session time out:
Distributable_UI_=Distributable
Display_Name_UI_=Display Name
Session_Config_UI_=Session Config
Session_Timeout_UI_=Session Timeout
Mime_mappings__UI_=Mime mappings:
File_Extension_UI_=File Extension
Mime_Type_UI_=Mime Type
Delete_context_parameters_UI_=Delete context parameters
Welcome_file_name_change_UI_=Welcome file name change
(New_Welcome_File)_UI_=(New Welcome File)
Choose_an_Error_Page_UI_=Choose an Error Page
Select_an_Error_Page_UI_=Select an Error Page
Delete_welcome_files_UI_=Delete welcome files
Delete_error_pages_UI_=Delete error pages
Welcome_files_UI_=Welcome files
Choose_a_Login_Page_UI_=Choose a Login Page
Select_a_Login_Page_UI_=Select a Login Page
Error_mapping__UI_=Error mapping:
Error/Exception_UI_=Error/Exception
Login_UI_=Login
Realm_name__UI_=Realm name:
Authentication_method__UI_=Authentication method:
Login_page__UI_=Login page:
Error_page__UI_=Error page:
New_login_config_UI_=New login config
New_auth_method_ERROR_=IWAE0020E New auth method
New_auth_method_UI_=New auth method
New_realm_name_UI_=New realm name
New_form_login_config_UI_=New form login config
New_form_error_page_UI_=New form error page
(New_Error_Code)_UI_=(New Error Code)
New_error_page_UI_=New error page
Role_Name_UI_=Role Name
Select_all_UI_=Select all
Deselect_all_UI_=Deselect all
Authority_constraint_chang_UI_=Authority constraint change
Select_Auth_Constraints_UI_=Select Auth Constraints
Load_on_startup_UI_=Load on startup
Load_order__UI_=Load order:
New_parameter_UI_=New parameter
Initialization_Parameter_UI_=Initialization Parameter
Load_on_startup_change_UI_=Load on startup change
Delete_parameter_UI_=Delete parameter
Initialization_Parameters_UI_=Initialization Parameters
Security_role_changes_UI_=Security role changes
New_security_role_referenc_UI_=New security role reference
remove_security_role_refer_UI_=remove security role reference
Select_Authorized_Roles_UI_=Select Authorized Roles
Name__UI_=Name:
Delete_URL_Patterns_UI_=Delete URL Patterns
URL_Patterns_UI_=URL Patterns
HTTP_Methods_UI_=HTTP Methods
(New_URL_pattern)_UI_=(New URL pattern)
New_URL_pattern_UI_=New URL pattern
Web_resource_collection_na_UI_=Web resource collection name change
Web_resource_collection_de_UI_=Web resource collection description change
Add_http_method_type_UI_=Add http method type
Remove_http_method_type_UI_=Remove http method type
EJB_references_UI_=EJB references
Resource_factory_reference_UI_=Resource references
JSP_tag_libraries_UI_=JSP tag libraries
References_UI_=References
Environment_UI_=Environment
Source_UI_=Source
Error_creating_nested_text_ERROR_=IWAE0021E Error creating nested text editor
Pages_UI_=Pages
Security_UI_=Security
General_UI_=General
The_description_property_UI_=The description property
Roles_UI_=Roles
The_roles_property_UI_=The roles property
SecConstraint_UI_=SecConstraint
The_secConstraint_property_UI_=The secConstraint property
ParamName_UI_=ParamName
The_paramName_property_UI_=The paramName property
ParamValue_UI_=ParamValue
The_paramValue_property_UI_=The paramValue property
WebApp_UI_=WebApp
The_webApp_property_UI_=The webApp property
The_location_property_UI_=The location property
ErrorCode_UI_=ErrorCode
The_errorCode_property_UI_=The errorCode property
ExceptionType_UI_=ExceptionType
The_exceptionType_property_UI_=The exceptionType property
FormLoginPage_UI_=FormLoginPage
The_formLoginPage_property_UI_=The formLoginPage property
FormErrorPage_UI_=FormErrorPage
The_formErrorPage_property_UI_=The formErrorPage property
LoginConfig_UI_=LoginConfig
The_loginConfig_property_UI_=The loginConfig property
HttpMethod_UI_=HttpMethod
The_httpMethod_property_UI_=The httpMethod property
ResCollection_UI_=ResCollection
The_resCollection_property_UI_=The resCollection property
AuthMethod_UI_=AuthMethod
The_authMethod_property_UI_=The authMethod property
RealmName_UI_=RealmName
The_realmName_property_UI_=The realmName property
FormLoginConfig_UI_=FormLoginConfig
The_formLoginConfig_proper_UI_=The formLoginConfig property
Extension_UI_=Extension
The_extension_property_UI_=The extension property
MimeType_UI_=MimeType
The_mimeType_property_UI_=The mimeType property
RoleName_UI_=RoleName
The_roleName_property_UI_=The roleName property
AuthConstraint_UI_=AuthConstraint
The_authConstraint_propert_UI_=The authConstraint property
UserDataConstraint_UI_=UserDataConstraint
The_userDataConstraint_pro_UI_=The userDataConstraint property
Create_WebResourceCollecti_UI_=Create WebResourceCollection
SecurityConstraint_UI_=SecurityConstraint
SmallIcon_UI_=SmallIcon
Small_Icon_UI_=Small Icon
LargeIcon_UI_=LargeIcon
Large_Icon_UI_=Large Icon
ServletName_UI_=ServletName
The_servletName_property_UI_=The servletName property
DisplayName_UI_=DisplayName
The_displayName_property_UI_=The displayName property
LoadOnStartup_UI_=LoadOnStartup
The_loadOnStartup_property_UI_=The loadOnStartup property
Create_InitParam_UI_=Create InitParam
<servlet>_UI_=<servlet>
UrlPattern_UI_=UrlPattern
The_urlPattern_property_UI_=The urlPattern property
Servlet_UI_=Servlet
The_servlet_property_UI_=The servlet property
URL_pattern_UI_=URL Pattern
?_UI_=?
SessionTimeout_UI_=SessionTimeout
The_sessionTimeout_propert_UI_=The sessionTimeout property
TaglibURI_UI_=TaglibURI
The_taglibURI_property_UI_=The taglibURI property
TaglibLocation_UI_=TaglibLocation
The_taglibLocation_propert_UI_=The taglibLocation property
TransportGuarantee_UI_=TransportGuarantee
The_transportGuarantee_pro_UI_=The transportGuarantee property
The_distributable_property_UI_=The distributable property
FileList_UI_=FileList
The_fileList_property_UI_=The fileList property
Create_ContextParam_UI_=Create ContextParam
<web_app>_UI_=<web app>
WebResourceName_UI_=WebResourceName
The_webResourceName_proper_UI_=The webResourceName property
Create_URLPatternType_UI_=Create URLPatternType
WebType_UI_=WebType
JspFile_UI_=JspFile
The_jspFile_property_UI_=The jspFile property
ClassName_UI_=ClassName
The_className_property_UI_=The className property
WelcomeFile_UI_=WelcomeFile
The_welcomeFile_property_UI_=The welcomeFile property
<welcome-file>_UI_=<welcome-file>
Create_WelcomeFile_UI_=Create WelcomeFile
Welcome_File_List_UI_=Welcome File List
Error_Message_No_WRC_Entries_UI_=At least one web resource collection is required for a security constraint. If you want to delete this web resource collection, you must delete the entire security constraint.
Error_Title_No_WRC_Entries_UI_=Web resource collection
required1concat=Create a child of type #CHILD_CLASS_NAME# for the selected {0}.
(New_URL)_UI__UI_=(New URL)
New_param_UI__UI_=New param
value_UI__UI_=value
Select_Servlet_or_JSP_UI_=Select Servlet or JSP
Select_JSP_UI_=Select JSP
Add_Servlet_or_JSP_UI_=Add Servlet or JSP
Add_JSP_UI_=Add JSP
New_ErrorPage_UI_=New ErrorPage
New_ExceptionType_UI_=New ExceptionType
Add_Servlet_UI_=Add Servlet
Web_Nature_Runtime_does_no_EXC_=IWAE0022E Web Nature Runtime does not exist.
Editor_Redirection_UI_=Editor Redirection
The_selected_web.xml_file__ERROR_=IWAE0023E The selected web.xml file is not contained within a WAR Project.  Therefore, this web.xml file is not a Deployment Descriptor for a Web Archive, hence the XML editor will be opened.
Problems_Opening_Editor_UI_=Problems Opening Editor
Create_#CHILD_CLASS_NAME#_UI_=Create #CHILD_CLASS_NAME#
Move_Welcome_Files_Down_UI_=Move Welcome Files Down
Move_Welcome_Files_Up_UI_=Move Welcome Files Up
Error_occurred_getting_web=Error occurred getting web.xml: {0}
Select_Class_UI_=Select Class
Could_not_uniquely_map_the_ERROR_=IWAE0024E Could not uniquely map the class name to a class.
Information_UI_=Information
The_chosen_operation_is_no_INFO_=IWAE0025I The chosen operation is not currently available.
JNDI_Name_UI_=JNDI Name
New_Servlet_UI_=New Servlet


(New_Filter)_1=(New Filter)
New_filter_2=New filter
New_filter_mapping_1=New filter mapping
New_listener_1=New listener
The_name_property_2=The name property
The_value_property_4=The value property
The_target_property_2=The target property
The_type_property_4=The type property
The_ExternalCacheGroups_property_2=The ExternalCacheGroups property
The_IdGenerator_property_4=The IdGenerator property
The_InvalidateOnly_property_6=The InvalidateOnly property
The_MetadataGenerator_property_8=The MetadataGenerator property
The_Priority_property_10=The Priority property
The_PropertiesGroupName_property_12=The PropertiesGroupName property
The_Timeout_property_14=The Timeout property
Small__1=Small:
Large__3=Large:
Choose_Small_Icon_5=Choose Small Icon
Select_the_Small_Icon_6=Select the Small Icon
Choose_Large_Icon_7=Choose Large Icon
Select_the_Large_Icon_8=Select the Large Icon
Caching_group_name__1=Caching group name:
Priority__2=Priority:
Timeout__3=Timeout:
second(s)_4=second(s)
Invalidate_only_5=Invalidate only
Caching_group_members__6=Caching group members:
_Servlet/JSP_7=\ Servlet/JSP
Remove_9=Remove
Use_URIs_for_cache_ID_building_1=Use URIs for cache ID building
Use_specified_string__2=Use specified string:
Variables__3=Variables:
_ID_4=\ ID
_Type_5=\ Type
_Required_6=\ Required
External_Cache_groups__1=External Cache groups:
_Group_Name_2=\ Group Name
ID_generator__3=ID generator:
Meta_data_generator__4=Meta data generator:
Remove_6=Remove
Add_Servlet_Caching_Configuration_1=Add Servlet Caching Configuration
Edit_Servlet_Caching_Configuration_2=Edit Servlet Caching Configuration
Add_1=Add
Remove_2=Remove
UP_5=UP
DOWN_6=DOWN
Add_or_Remove_Servlet_or_JSP_1=Add or Remove Servlet or JSP
Add_or_Remove_Security_Role_2=Add or Remove Security Role
Add_or_Remove_Security_Constraint_3=Add or Remove Security Constraint
Add_or_Remove_Environment_Variable_4=Add or Remove Environment Variable
Add_or_Remove_EJB_Reference_5=Add or Remove EJB Reference
Add_or_Remove_Resource_Reference_6=Add or Remove Resource Reference
Add_or_Remove_JSP_Tag_Library_7=Add or Remove JSP Tag Library
Add_or_Remove_Error_Page_8=Add or Remove Error Page
Add_or_Remove_Exception_Page_9=Add or Remove Exception Page
Add_or_Remove_Welcome_Page_10=Add or Remove Welcome Page
Add_or_Remove_Context_Parameter_11=Add or Remove Context Parameter
Add_or_Remove_Mime_Mapping_12=Add or Remove Mime Mapping
Add_or_Remove_Filter_13=Add or Remove Filter
Add_or_Remove_Listener_14=Add or Remove Listener
Add_or_Remove_Mime_Filter_15=Add or Remove Mime Filter
Add_or_Remove_File_Serving_Attribute_16=Add or Remove File Serving Attribute
Add_or_Remove_Invoker_Attribute_17=Add or Remove Invoker Attribute
Add_or_Remove_JSP_Attribute_18=Add or Remove JSP Attribute
Add_or_Remove_Servlet_Caching_Configuration_19=Add or Remove Servlet Caching Configuration
Filter_Mappings_1=Filter Mappings
Read_Only_22=Read Only
Writable_23=Writable
Read_only_files____25=Read only files:
Web_Deployment_Descriptor_28=Web Deployment Descriptor
Environment_1=Environment
Environment_Variables_2=Environment Variables
Extensions_1=Extensions
Filters_1=Filters
Listeners_1=Listeners
Mime_1=Mime
Mime_Mappings_2=Mime Mappings
Overview_1=Overview
Pages_1=Pages
Parameters_1=Parameters
Context_Parameters_2=Context Parameters
References_1=References
References_2=References
EJB_references_3=EJB references
Resource_references_4=Resource references
JSP_tag_libraries_5=JSP tag libraries
Security_1=Security roles
Security_Roles_3=Security Roles
Security_Constraints_4=Security Constraints
Servlets_1=Servlets
Servlets_and_JSPs_2=Servlets and JSPs
Details_1=Details
Details_of_the_selected_environment_variable__2=Details of the selected environment variable:
Type__3=Type:
Value__13=Value:
Mime_Type_change_14=Mime Type change
Variables_1=Variables
The_following_environment_variables_are_relevant_to_this_web_application__2=The following environment variables are relevant to this web application:
(New_Variable)_3=(New Variable)
File_Serving_Attributes_1=File Serving Attributes
_Name_2=\ Name
_Value_3=\ Value
(name)_4=(name)
(value)_5=(value)
General_1=General
Reloading_enabled_2=Reloading enabled
Reload_interval__3=Reload interval:
Default_error_page__5=Default error page:
Additional_class_path__7=Additional class path:
File_serving_enabled_9=File serving enabled
Directory_browsing_enabled_10=Directory browsing enabled
Serve_servlets_by_classname_11=Serve servlets by classname
Precompile_JSPs_12=Precompile JSPs
Automatic_Request_Encoding_enabled_13=Automatic Request Encoding enabled
Automatic_Response_Encoding_enabled_14=Automatic Response Encoding enabled
Choose_a_Default_Error_Page_15=Choose a Default Error Page
Reload_Enabled_Changed_16=Reload Enabled Changed
File_Serving_Enabled_Changed_17=File Serving Enabled Changed
Directory_Browsing_Enabled_Changed_18=Directory Browsing Enabled Changed
Serve_Servlets_by_classname_Enabled_Changed_19=Serve Servlets by classname Enabled Changed
Precompile_JSPs_Enabled_Changed_20=Precompile JSPs Enabled Changed
Automatic_Request_Encoding_Enabled_Changed_21=Automatic Request Encoding Enabled Changed
Automatic_Response_Encoding_Enabled_Changed_22=Automatic Response Encoding Enabled Changed
Reload_Interval_25=Reload Interval
Default_Error_Page_26=Default Error Page
Additional_Classpath_27=Additional Classpath
Invoker_Attributes_1=Invoker Attributes
JSP_Attributes_1=JSP Attributes
MIME_Filters__1=MIME Filters
_Target_2=\ Target
_Type_3=\ Type
(target)_4=(target)
(type)_5=(type)
Servlet_Caching_Configurations_1=Servlet Caching Configurations
Details_of_the_selected_filter_2=Details of the selected filter
Filter_class__3=Filter class:
Display_name__5=Display name:
Filter_Type_Selection_7=Filter Type Selection
FilterItemProvider_UI_0=FilterName
Choose_a_Filter_Type_8=Choose a Filter Type
The_following_Filters_are_included_in_this_web_application__2=The following Filters are included in this web application:
Icons_1=Icons
The_following_icons_represent_the_selected_filter__2=The following icons represent the selected filter:
Initialization_1=Initialization
The_following_Filters_will_be_started_when_the_web_application_is_started__2=The following Filters will be started when the web application is started:
_Name_3=\ Name
_Value_4=\ Value
Delete_Filter_Init_Param_5=Delete Filter Init Param
(name)_6=(name)
(value)_7=(value)
New_Initialization_Parameter_8=New Initialization Parameter
Servlet_Mappings_2=Servlet Mappings
The_following_servlets_are_mapped_to_this_filter__3=The following servlets are mapped to this filter:
Delete_filter_mappings_4=Delete filter mappings
New_filter_mapping_5=New filter mapping
URL_Mappings_1=URL Mappings
The_following_URLs_are_mapped_to_this_filter__2=The following URLs are mapped to this filter:
Delete_filter_mappings_3=Delete filter mappings
New_filter_mapping_4=New filter mapping
Details_of_the_selected_listener_2=Details of the selected listener
Package__3=Package:
(default_package)_5=(default package)
Listeners_5=Listeners
The_following_Listeners_are_included_in_this_web_application__6=The following Listeners are included in this web application:
Listener_Type_Selection_10=Listener Type Selection
Choose_a_Listener_Type_11=Choose a Listener Type
Details_of_the_selected_file_extension__2=Details of the selected file extension:
Mime_type__3=Mime type:
Mime_Type_change_4=Mime Type change
File_Extensions_1=File Extensions
The_following_file_extensions_are_mapped_to_Mime_types__2=The following file extensions are mapped to Mime types:
Context_Parameters_1=Context Parameters
The_following_context_initialization_parameters_apply_to_all_servlets_in_this_web_application__2=The following context initialization parameters apply to all servlets in this web application:
Environment_Variables_1=Environment Variables
The_following_filters_are_used_in_this_application__2=The following filters are used in this application:
General_Information_1=General Information
Display_name__2=Display name:
Description__3=Description:
Session_time_out__4=Session time out:
Distributable_5=Distributable
Display_Name_6=Display Name
Description_7=Description
Icons_2=Icons
The_following_icons_represent_this_web_application__3=The following icons represent this web application:
The_following_listeners_are_used_in_this_application__2=The following listeners are used in this application:
Mime_Type_1=Mime Type
The_following_file_extensions_are_mapped_to_mime_types__2=The following file extensions are mapped to mime types:
This_web_application_uses_the_following_welcome_and_error_pages__2=This web application uses the following welcome and error pages:
This_web_application_references_the_following_resources__2=This web application references the following resources:
The_following_security_roles_and_constraints_are_defined_for_this_web_application__2=The following security roles and constraints are defined for this web application:
Servlets_and_JSPs_1=Servlets and JSPs
The_following_servlets_and_JSPs_are_used_in_this_application__2=The following servlets and JSPs are used in this application:
Usage_1=Usage
The_following_Enterprise_Applications_use_this_web_module__2=The following Enterprise Applications use this web module:
Error_Pages_1=Error Pages
Resources_in_the_following_URLs_will_be_accessed_in_response_to_HTTP_error_codes__2=Resources in the following URLs will be accessed in response to HTTP error codes:
_Error_Code_3=\ Error Code
_URL_4=\ URL
Java_Exception_Types_2=Java Exception Types
Resources_in_the_following_URLs_will_be_accessed_in_response_to_Java_exception_types__3=Resources in the following URLs will be accessed in response to Java exception types:
_Exception_Type_4=\ Exception Type
_URL_5=\ URL
Exception_Type_Selection_9=Exception Type Selection
Choose_an_Exception_Type_10=Choose an Exception Type
Login_1=Login
The_following_Login_configuration_values_are_used_for_this_web_application__2=The following Login configuration values are used for this web application:
Realm_name__3=Realm name:
Authentication_method__4=Authentication method:
Login_page__5=Login page:
Error_page__8=Error page:
Welcome_Pages_1=Welcome Pages
The_server_will_search_for_the_following_pages,_in_this_order,_when_the_web_application_is_referenced__2=The server will search for the following pages, in this order, when the web application is referenced:
The_following_context_parameters_are_included_in_this_web_application__2=The following context parameters are included in this web application:
Details_of_the_selected_context_parameter__2=Details of the selected context parameter:
Value__3=Value:
Context_Param_Value_change_4=Context Param Value change
WebSphere_Bindings_1=WebSphere Bindings
JNDI_Name__2=JNDI Name:
Ejb_Ref_JNDI_Name_change_3=Ejb Ref JNDI Name change
Details_of_the_selected_EJB_reference_2=Details of the selected EJB reference
Home__6=Home:
Remote__7=Remote:
Ejb_Ref_Home_change_8=Ejb Ref Home change
Ejb_Ref_Remote_change_9=Ejb Ref Remote change
EJB_Reference_Type_change_10=EJB Reference Type change
EJB_References_1=EJB References
The_following_EJB_references_are_used_in_this_web_application__2=The following EJB references are used in this web application:
JNDI_Name_3=JNDI Name
Details_of_the_selected_JSP_tag_library_2=Details of the selected JSP tag library
URI__3=URI:
Location__4=Location:
JSP_tag_library_location_change_5=JSP tag library location change
JSP_tag_library_URI_change_6=JSP tag library URI change
JSP_tag_libraries_1=JSP tag libraries
The_following_JSP_tag_libraries_are_used_in_this_web_application__2=The following JSP tag libraries are used in this web application:
Resource_Ref_JNDI_Name_change_3=Resource Ref JNDI Name change
Details_of_the_selected_resource_reference_2=Details of the selected resource reference
Authentication__4=Authentication:
Resource_Reference_Type_change_7=Resource Reference Type change
Resource_Reference_Authentication_change_10=Resource Reference Authentication change
Resource_References_1=Resource References
The_following_resource_references_are_used_in_this_web_application__2=The following resource references are used in this web application:
(New_ResourceRef)_3=(New ResourceRef)
JNDI_Name_4=JNDI Name
Authorized_Roles_2=Authorized Roles
The_following_roles_are_authorized_to_access_the_web_resource_collections_in_this_security_constraint__3=The following roles are authorized to access the web resource collections in this security constraint:
Security_Constraints_1=Security Constraints
These_constraints_prescribe_access_policies_for_specific_web_resources_2=These constraints prescribe access policies for specific web resources
User_Data_Constraint_1=User Data Constraint
The_following_are_the_transport_guarantees_required_between_client_and_server_for_the_security_constraint__2=The following are the transport guarantees required between client and server for the security constraint:
Web_Resource_Collections_1=Web Resource Collections
The_following_define_web_resources_and_their_HTTP_method_for_this_web_application__2=The following define web resources and their HTTP method for this web application:
Details_of_the_selected_security_role__2=Details of the selected security role:
Security_Roles_Description_change_5=Security Roles Description change
Security_Roles_1=Security Roles
The_following_security_roles_are_defined_for_this_web_application__2=The following security roles are defined for this web application:
Authorized_roles_2=Authorized roles
The_following_roles_are_authorized_to_access_this_servlet__3=The following roles are authorized to access this servlet:
Details_of_the_selected_servlet_or_JSP_2=Details of the selected servlet or JSP
Servlet_class__3=Servlet class:
WebSphere_Extensions_3=WebSphere Extensions
Optional_WebSphere_specific_extensions_to_the_Web_Deployment_Descriptor_4=Optional WebSphere specific extensions to the Web Deployment Descriptor
Unresolved_action__5=Unresolved action:
Servlet_Extension_Change_6=Servlet Extension Change
The_following_icons_represent_the_selected_servlet_or_JSP__3=The following icons represent the selected servlet or JSP:
The_following_URLs_are_mapped_to_this_servlet__2=The following URLs are mapped to this servlet:
The_following_servlets_and_JSPs_are_included_in_this_web_application__2=The following servlets and JSPs are included in this web application:
The_filterName_property_3=The filterName property
The_filter_property_2=The filter property
The_ListenerClass_property_2=The ListenerClass property
Details...=Details...
Load_on_startup_5=Load on startup
Load_order__6=Load order:
Delete_Servlet_Init_Param_7=Delete Servlet Init Param
(name)_8=(name)
(value)_9=(value)
New_Initialization_Parameter_10=New Initialization Parameter
Filter_mapping___1=Filter mapping:
SecurityConstraint_1=SecurityConstraint
The_following_initialization_parameters_are_configured_for_this_servlet__1=The following initialization parameters are configured for this servlet:
Filter_mapping_text={0} -> {1}
Add_or_Remove_Resource_Environment_Reference_1=Add or Remove Resource Environment Reference
MIME_1=MIME
MIME_Mappings_2=MIME Mappings
Resource_Environment_1=Resource Environment
Automatic_Filter_Loading_enabled_1=Automatic Filter Loading enabled
Automatic_Filter_Loading_Enabled_Changed_4=Automatic Filter Loading Enabled Changed
The_following_servlets_have_this_filter_mapped_to_them_1=The following servlets have this filter mapped to them
The_following_URLs_have_this_filter_mapped_to_them_1=The following URLs have this filter mapped to them
MIME_type__1=MIME type:
MIME_Type_change_2=MIME Type change
The_following_file_extensions_are_mapped_to_MIME_types_1=The following file extensions are mapped to MIME types
Location_1=\ Location
Link__1=Link:
Ejb_Ref_Link_change_2=Ejb Ref Link change
Resource_Env_Ref_JNDI_Name_change_1=Resource Env Ref JNDI Name change
Details_of_the_selected_resource_environment_reference_1=Details of the selected resource environment reference
Type_Selection_2=Type Selection
Choose_a_type_3=Choose a type
Resource_Environment_References_1=Resource Environment References
The_following_resource_environment_references_are_used_in_this_web_application_2=The following resource environment references are used in this web application
New_ResourceEnvRef_3=New ResourceEnvRef
Add_Servlet_Extension_1=Add Servlet Extension
_ERROR_Problems_opening_editor_3=IWAE0026E Problems opening editor
_ERROR_JSP_file_does_not_exist_4=IWAE0027E JSP file does not exist
_ERROR_Problems_opening_editor_5=IWAE0028E Problems opening editor
_ERROR_Could_not_find_type_within_project_6=IWAE0029E Could not find type within project
_ERROR_Problems_opening_editor_7=IWAE0030E Problems opening editor
_ERROR_Problems_opening_editor_8=IWAE0031E Problems opening editor
Add_Variable_1=Add Variable
Edit_Variable_2=Edit Variable
Define_a_new_variable_in_this_servlet_caching_configuration_1=Define a new variable in this servlet caching configuration
Variable_2=Variable
ID__3=ID:
Type__4=Type:
Method__5=Method:
Data_ID__6=Data ID:
Invalid_ID__7=Invalid ID:
Required_8=Required
Add_External_Cache_Group_1=Add External Cache Group
Add_an_external_cache_group_to_this_servlet_caching_configuration_1=Add an external cache group to this servlet caching configuration
External_Cache_Group_2=External Cache Group
Group_Name__3=Group Name:
Group_Name_is_empty_5=Group Name is empty
Caching_group_name_is_empty_2=Caching group name is empty
Priority_must_be_an_integer_3=Priority must be an integer
Timeout_must_be_an_integer_4=Timeout must be an integer
Define_a_new_servlet_caching_configuration_1=Define a new servlet caching configuration
Servlet_Caching_Configuration_2=Servlet Caching Configuration
The_DefaultPage_property_2=The DefaultPage property
The_ErrorPage_property_4=The ErrorPage property
The_MimeType_property_6=The MimeType property
The_Name_property_8=The Name property
The_Pages_property_10=The Pages property
The_ExtendedServlet_property_2=The ExtendedServlet property
The_LocalTransaction_property_4=The LocalTransaction property
The_MarkupLanguage_property_6=The MarkupLanguage property
Define_Authorization_Constraint_1=Define Authorization Constraint
Choose_a_servlet__1=Choose a servlet:
Choose_a_servlet__2=Choose a Servlet:
Matching_servlets__2=Matching servlets:
Choose_a_filter__1=Choose a filter:
Matching_filters__2=Matching filters:
Qualifier__3=Qualifier:
Add_or_Remove_EJB_Local_Reference_1=Add or Remove EJB Local Reference
Add_or_Remove_Markup_Language_2=Add or Remove Markup Language
Close_editor_3=Close editor
File_has_been_deleted_from_the_file_system._nWhat_would_you_like_to_do__4=File has been deleted from the file system.\nWhat would you like to do?
Save_and_close_editor_5=Save and close editor
Close_editor_6=Close editor
This_web.xml_file_is_not_a_valid_Deployment_Descriptor_for_a_Web_Archive,_hence_the_XML_editor_will_be_opened_7=This web.xml file is not a valid Deployment Descriptor for a Web Archive, hence the XML editor will be opened.
EJB_1=EJB
EJB_Local_2=EJB Local
Resource_3=Resource
Resource_Environment_1_4=Resource_Environment_1
JSP_tag_libraries_5_5=JSP_tag_libraries_5
Choose_a_filter__1=Choose a filter:
Matching_filters__2=Matching filters:
Choose_a_listener__1=Choose a listener:
Matching_listener__2=Matching listener:
Problems_opening_editor_2=Problems opening editor
application.xml_does_not_exist_3=application.xml does not exist
Refresh_4=Refresh
Details_of_the_selected_EJB_Local_reference_1=Details of the selected EJB Local reference
Local_home__2=Local home:
Local__3=Local:
EJB_Local_References_1=EJB Local References
The_following_EJB_local_references_are_used_in_this_web_application_2=The following EJB local references are used in this web application
(New_EJB_Local_Ref)_3=(New EJB Local Ref)
(New_ResourceEnvRef)_1=(New ResourceEnvRef)
Description__2=Description:
Description_change_3=Description change
Details_of_the_Servlet_Extension_of_the_selected_servlet_1=Details of the Servlet Extension of the selected servlet
Markup_Languages_2=Markup Languages
Local_Transaction_3=Local Transaction
Delete_Filter_Mapping_1=Delete Filter Mapping
Add_Filter_Mappings_2=Add Filter Mappings
Choose_a_JSP__1=Choose a JSP:
Name__2=Name:
MIME_type__3=MIME type:
Error_page__4=Error page:
Browse_5=Browse
Default_page__6=Default page:
Browse_7=Browse
Pages__8=Pages:
_Name_9=\ Name
_URI_10=\ URI
(Name)_11=(Name)
(URI)_12=(URI)
Name_is_empty_13=Name is empty
MIME_is_empty_14=MIME is empty
Define_a_new_markup_language_entry_1=Define a new markup language entry
Markup_Language_2=Markup Language
Choose_a_Page_1=Choose a Page
Description__1=Description:
Environment_variable_value_change_1=Environment variable value change
Environment_variable_description_change_2=Environment variable description change
Description_name_change_2=Description name change
Context_Param_Description_change_1=Context Param Description change
Ejb_Ref_Description_change_1=Ejb Ref Description change
Resource_Environment_Ref_Description_change_1=Resource Environment Ref Description change
Resource_Ref_Description_change_1=Resource Ref Description change
Details_of_the_selected_security_constraint_1=Details of the selected security constraint
Display_Name__2=Display Name:
Security_Constraint_DisplayName_change_3=Security Constraint DisplayName change
Empty_List_2=Empty List
_UI_Select_a_tag_library_to_add_to_the_deployment_descriptor_1=Select a tag library to add to the deployment descriptor
_UI_Add_a_Tag_Library_2=Add a Tag Library
_UI_Tag_Libraries__3=Tag Libraries:
_UI_Available_Custom_Tags__4=Available Custom Tags:
_UI__Tag_5=\ Tag
_UI__Description_6=\ Description
_UI_URI__7=URI:
_UI_Select_a_Tag_Library_8=Select a Tag Library
_UI_URI_cannot_be_empty_10=URI cannot be empty
Browse..._1=Browse...
Browse..._3=Browse...
Browse..._4=Browse...
Remove_Link_7=Remove Link
Home_interface_selection_8=Home interface selection
Local_interface_selection_13=Local interface selection
Choose_an_interface_16=Choose an interface
Matching_interfaces__17=Matching interfaces:
Set_EJB_Local_Ref_Link_18=Set EJB Local Ref Link
Remove_EJB_Local_Ref_Link_19=Remove EJB Local Ref Link
EJB_selection_3=EJB selection
Choose_an_EJB_4=Choose an EJB
Matching_EJBs__5=Matching EJBs:
Location__6=Location:
Empty_List_11=Empty List
Set_EJB_Ref_Link_8=Set EJB Ref Link
Remove_EJB_Ref_Link_9=Remove EJB Ref Link
Home_interface_selection_11=Home interface selection
Remote_interface_selection_14=Remote interface selection
Choose_an_interface_17=Choose an interface
Matching_interfaces__18=Matching interfaces:
Specify_an_Error_Code_and_Location_1=Specify an Error Code and Location
Specify_an_Exception_Type_and_Location_2=Specify an Exception Type and Location
Add_an_Error_Page_3=Add an Error Page
Error_Code__4=Error Code:
Exception_Type__5=Exception Type:
Select..._6=Select...
Browse..._7=Browse...
Location__8=Location:
Browse..._9=Browse...
Error_Code_is_empty_13=Error Code is empty
Exception_Type_is_empty_14=Exception Type is empty
Location_is_empty_16=Location is empty
Location_18=Location
Select_a_Page_19=Select a Page
Add_a_page_to_this_markup_language_1=Add a page to this markup language
Page_2=Page
Name__3=Name:
URI__4=URI:
Name_is_empty_8=Name is empty
URI_is_empty_10=URI is empty
Details_of_the_Servlet_Extension_for_the_selected_servlet_1=Details of the Servlet Extension for the selected servlet
Delete_Markup_Language_7=Delete Markup Language
Add_Markup_Language_entry_8=Add Markup Language entry
Edit_Markup_Language_entry_9=Edit Markup Language entry
The_name_property_1=The name property
The_URI_property_2=The URI property
Empty_List_1=Empty List
Web_Library_Projects_1=Web Library Projects
The_following_JARs_are_mapped_to_Java_projects__2=The following JARs are mapped to Java projects:
_JAR_Name_3=\ JAR Name
_Java_Project_4=\ Java Project
Error_5=Error
Add_Page_1=Add Page
Up_1=Up
Down_2=Down
Resource_Reference_Shareable_change_3=Resource Reference Shareable change
Environment_variable_type_change_1=Environment variable type change
WebSphere_Extensions_1=WebSphere Extensions
Browse..._2=Browse...
Remove_Page_3=Remove Page
Tag_Library_1=Tag Library
Create_Page_1=Create Page
Create_MarkupLanguage_1=Create MarkupLanguage
Add_or_Remove_Servlet_Extension_1=Add or Remove Servlet Extension
_INFO_No_security_roles_exist._1=IWAE0032I No security roles exist.
_INFO_No_Enterprise_Beans_which_implement_the_remote_interface_exist._1=IWAE0033I No Enterprise Beans which implement the remote interface exist.
_INFO_No_Enterprise_Beans_which_implement_the_local_interface_exist._2=IWAE0034I No Enterprise Beans which implement the local interface exist.
_INFO_No_servlets_exist_to_add._1=IWAE0035I No servlets exist to add.
_INFO_No_classes_which_implement_javax.servlet.Filter_exist._1=IWAE0037I No classes which implement javax.servlet.Filter exist.
_INFO_No_filters_exist_to_add._1=IWAE0038I No filters exist to add.
_INFO_No_listeners_exist_to_add._1=IWAE0039I No listeners exist to add.
_ERROR_Error_updating_Web_Properties_1=IWAE0040E Error updating Web Properties
_INFO_No_home_interfaces_exist._1=IWAE0041I No home interfaces exist.
_INFO_No_local_interfaces_exist._2=IWAE0042I No local interfaces exist.
_INFO_No_remote_interfaces_exist._2=IWAE0043I No remote interfaces exist.
_INFO_No_tag_libraries_exist_to_add._1=IWAE0044I No tag libraries exist to add.
_INFO_No_exceptions_exist_to_add._1=IWAE0045I No exceptions exist to add.
Add_Resource_Reference_Extension_3=Add Resource Reference Extension
Virtual_Host_Name__1=Virtual Host Name:
Connection_management__1=Connection management:
Isolation_level__2=Isolation level:
_Markup_Language_1=\ Markup Language
_Mime_Type_2=\ Mime Type
Boundary__3=Boundary:
Resolver__4=Resolver:
Unresolved_Action__5=Unresolved Action:
Select_an_Error_Code_1=Select an Error Code
Code_2=Code
Description_3=Description
*_denotes_error_code_new_to_HTTP_1.1_4=* denotes error code new to HTTP 1.1
Continue*_6=Continue*
Switching_Protocols*_8=Switching Protocols*
OK_10=OK
Created_12=Created
Accepted_14=Accepted
Non-Authoritative_Information*_16=Non-Authoritative Information*
No_Content_18=No Content
Reset_Content*_20=Reset Content*
Partial_Content*_22=Partial Content*
Multiple_Choices_24=Multiple Choices
Moved_Permanently_26=Moved Permanently
Found_28=Found
See_Other*_30=See Other*
Not_Modified_32=Not Modified
Use_Proxy*_34=Use Proxy*
Temporary_Redirect*_36=Temporary Redirect*
Bad_Request_38=Bad Request
Unauthorized_40=Unauthorized
Forbidden_42=Forbidden
Not_Found_44=Not Found
Method_Not_Allowed*_46=Method Not Allowed*
Not_Acceptable*_48=Not Acceptable*
Proxy_Authentication_Required*_50=Proxy Authentication Required*
Request_Timeout*_52=Request Timeout*
Conflict*_54=Conflict*
Gone*_56=Gone*
Length_Required*_58=Length Required*
Precondition_Failed*_60=Precondition Failed*
Request_Entity_Too_Large*_62=Request Entity Too Large*
Request_URI_Too_Long*_64=Request URI Too Long*
Unsupported_Media_Type*_66=Unsupported Media Type*
Requested_Range_Not_Satisfiable*_68=Requested Range Not Satisfiable*
Expectation_Failed*_70=Expectation Failed*
Internal_Server_Error_72=Internal Server Error
Not_Implemented_74=Not Implemented
Bad_Gateway_76=Bad Gateway
Service_Unavailable_78=Service Unavailable
Gateway_Timeout*_80=Gateway Timeout*
HTTP_Version_Not_Supported*_82=HTTP Version Not Supported*
Choose_a_Servlet_1=Choose a Servlet
Unspecified_1=Unspecified
Sharing__1=Sharing:
Error_Page_1=Error Page
New_EJB_Ref=(New EJB Ref)
selectSR=Select a Security Role
Role_name=Role name
NoSR=No Security Roles exist.
RemoveUDC=Remove User Data Constraint
UDC_desc_change=User Data Constraint description changed
Run_As=Run As
detRunAs=Details of the selected servlet's run-as element
SR=Security role:
Select=Select...
Remove=Remove
RemoveRA=Remove run-as
SetRA=Set run-as
SetRN=Set role-name
SecurityRoleRefDialog.Security_Role_Ref=Security Role Ref
SecurityRoleRefDialog.Role_name=Role name:
SecurityRoleRefDialog.Role_link=Role link:
SecurityRoleRefDialog.Description=Description:
WebapplicationEditor.Add_or_Remove_Security_Role_Ref=Add or Remove Security Role Ref
Ser_AuthSection._Link=\ Link
Ser_AuthSection.Edit_Security_Role_Ref=Edit Security Role Ref
srr_header=Security Role References
srr_description=The following security role references are defined for this servlet:
Local_encoding_mapping_list_UI_=Locale Encoding Mapping List
local_encoding_mapping_UI_=Locale Encoding Mapping
_UI_JSPConfig_type=JSP Config
_UI_TagLibRefType_type=TagLibRefType
_UI_JSPPropertyGroup_type=JSPPropertyGroup
_UI_JSPPropertyGroup_urlPattern_feature=URL Pattern
_UI_JSPPropertyGroup_elIgnored_feature=El Ignored
_UI_JSPPropertyGroup_pageEncoding_feature=Page Encoding
_UI_JSPPropertyGroup_scriptingInvalid_feature=Scripting Invalid
_UI_JSPPropertyGroup_isXML_feature=Is XML
_UI_JSPPropertyGroup_includePreludes_feature=Include Preludes
_UI_JSPPropertyGroup_includeCodas_feature=Include Codas


