###############################################################################
# Copyright (c) 2003, 2007 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
###############################################################################
j2ee=Java EE
client.jar.file_ui_=App Client JAR file
client.import.description_ui_=Import an external Application Client JAR file into an Application Client project
client.export.description_ui_=Export an Application Client project into an Application Client JAR file
ear.file_ui_=EAR file
ear.import.description_ui_=Import an external EAR file into an Enterprise Application project

ear.export.description_ui_=Export an Enterprise Application project into an EAR file
j2ee.category_ui_=Java EE
j2ee.actions.description_ui_=Actions for Java EE Development
create.enterprise.application_ui_=Create an Enterprise Application
create.client.module_ui_=Create an Application Client project
ejb.export.action.description_ui_=Export EJB JAR File...
utility_jar_import_wizard=J2EE Utility Jar
ear_component_ui_=Enterprise Application Project
new.ear.component.description_ui_=Create a Java EE EAR project
appclient_component_ui_=Application Client Project
new.appclient.component.description_ui_=Create a Java EE application client project
J2EEDependenciesPage.name = Java EE Module Dependencies
util-project-wizard-name = Utility Project
util-project-wizard-description = Create a Utility project
utility.import.description_ui_=Import one or more external *.jar files as Java EE Utility Projects or *.jars.
Web_Project_Settings=Web Project Settings
update-ear-libraries=Update EAR Libraries
update-ear-libraries-tooltip=Recompute the contents of the EAR Libraries classpath container.
earLibrariesContainerName=EAR Libraries

Bundle-Name.0 = WTP J2EE UI Plug-in
Bundle-Vendor.0 = Eclipse.org
javaee.ui.popupMenu=Java EE Tools
