###############################################################################
# Copyright (c) 2005, 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
# https://www.eclipse.org/legal/epl-2.0/
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
# properties file for org.eclipse.jst.jee.ejb
Bundle-Name.0 = Java EE Ejb Plug-in
Bundle-Vendor.0 = Eclipse Web Tools Platform
org.eclipse.jst.jee.ejb3.nobeans.marker.type = EJB Problem
org.eclipse.jst.jee.ejb3.validator.name = EJB 3.x Validator
org.eclipse.jst.jee.ejb3.nobeansmessage.label = No enterprise bean in the EJB project