###############################################################################
# Copyright (c) 2001, 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
###############################################################################
Ejb_provider_plugin_prob=Start des EJB-Provider-Plug-ins - Fehler bei Plug-in-Initialisierung
Ejbext_provider_plugin_prob=Start des EJBEXT-Provider-Plug-ins - Fehler bei Plug-in-Initialisierung
EJB_UI_STARTUP=EJB-UI-START
EJB_Path__=EJB-Pfad:
Size__=Gr\u00f6\u00dfe:
Edit_the_bean_class=Bean-Klasse bearbeiten
EJB_Tree=EJB-Baumstruktur
EJB_Jar_Components=EJB-JAR-Komponenten
EJB_Models=EJB-Modelle
EJB_Features=EJB-Funktionen
Exception_loading_plugin=Ausnahmebedingung beim Laden des Plug-ins
Create=Erstellen
Create_Attribute...=Attribut erstellen...
createAttribute=createAttribute
Edit=Bearbeiten
Add_To_Key=Zu Schl\u00fcssel hinzuf\u00fcgen
delete=L\u00f6schen
Unknown=Unbekannt
Remove_From_Key=Aus Schl\u00fcssel entfernen
Delete=L\u00f6schen
Delete_Attribute...=Attribut l\u00f6schen...
additions=Erg\u00e4nzungen
CMDS_Cannot_reflect_JavaClass_ERROR_=IWAE0068E Java-Klasse (JavaClass) kann nicht wiedergegeben werden, weil ihr Name nicht definiert ist.
CMDS_CLASS_SET_FAILED_STRING_ERROR_=IWAE0069E Der Java-Typ mit dem Namen {0} konnte nicht f\u00fcr {1} definiert werden, weil die EJB Null ist.
CMDS_Cannot_perform_INFO_=IWAE0070I Die Befehlsanforderung kann nicht ausgef\u00fchrt werden, weil die EJB f\u00fcr den Befehl Null ist:
CMDS_Cannot_add_the_feat_INFO_=IWAE0071I Die Funktion kann nicht zum Schl\u00fcssel hinzugef\u00fcgt werden, weil die Funktion f\u00fcr den Befehl Null ist:
CMDS_Cannot_remove_the_INFO_=IWAE0072I Die Funktion kann nicht aus dem Schl\u00fcssel entfernt werden, weil die Funktion f\u00fcr den Befehl Null ist:
CMDS_Initializing_UI_=-- Java-Generierung :: Initialisierung l\u00e4uft...
CMDS_Generating_UI_=-- Java-Generierung :: Generierung l\u00e4uft...
CMDS_Finishing_UI_=-- Java-Generierung :: Fertigstellung l\u00e4uft...
CMDS_Analyzing_UI_=-- Java-Generierung :: Analyse l\u00e4uft...
CMDS_Cancelled_WARNING_=Abgebrochen
CMDS_Multiple_EnterpriseBean_Up_INFO_=IWAE0073I Aktualisierungen von mehreren Enterprise-Beans
CMDS_CREATING_TASK_UI_=Bean mit dem Namen "{0}" wird erstellt
CMDS_UPDATING_TASK_UI_=Bean mit dem Namen "{0}" wird aktualisiert
CMDS_DELETING_TASK_UI_=Bean mit dem Namen "{0}" wird gel\u00f6scht
CMDS_Updating_Metadata..._UI_=-- Metadaten werden aktualisiert...
Updating=Aktualisierung l\u00e4uft
New_key_attribute_added_wi=Neues Schl\u00fcsselattribut wurde ohne Attribut-Helper hinzugef\u00fcgt
Error_has_occurred=Ein Fehler ist aufgetreten.

