###############################################################################
# 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=EJB \u63d0\u4f9b\u7a0b\u5e8f\u63d2\u4ef6\u542f\u52a8 \uff0d \u521d\u59cb\u5316\u63d2\u4ef6\u65f6\u51fa\u73b0\u95ee\u9898
Ejbext_provider_plugin_prob=Ejbext \u63d0\u4f9b\u7a0b\u5e8f\u63d2\u4ef6\u542f\u52a8 \uff0d \u521d\u59cb\u5316\u63d2\u4ef6\u65f6\u51fa\u73b0\u95ee\u9898
EJB_UI_STARTUP=EJB UI \u542f\u52a8
EJB_Path__=EJB \u8def\u5f84\uff1a
Size__=\u5927\u5c0f\uff1a
Edit_the_bean_class=\u7f16\u8f91 bean \u7c7b
EJB_Tree=EJB \u6811
EJB_Jar_Components=EJB JAR \u7ec4\u4ef6
EJB_Models=EJB \u6a21\u578b
EJB_Features=EJB \u529f\u80fd\u90e8\u4ef6
Exception_loading_plugin=\u88c5\u5165\u63d2\u4ef6\u65f6\u51fa\u73b0\u5f02\u5e38
Create=\u521b\u5efa
Create_Attribute...=\u521b\u5efa\u5c5e\u6027...
createAttribute=createAttribute
Edit=\u7f16\u8f91
Add_To_Key=\u6dfb\u52a0\u81f3\u952e
delete=\u5220\u9664
Unknown=\u672a\u77e5
Remove_From_Key=\u4ece\u952e\u4e2d\u9664\u53bb
Delete=\u5220\u9664
Delete_Attribute...=\u5220\u9664\u5c5e\u6027...
additions=\u9644\u52a0\u9879
CMDS_Cannot_reflect_JavaClass_ERROR_=IWAE0068E \u4e0d\u80fd\u53cd\u6620 Java \u7c7b\uff0c\u56e0\u4e3a\u672a\u8bbe\u7f6e\u5176\u540d\u79f0
CMDS_CLASS_SET_FAILED_STRING_ERROR_=IWAE0069E \u672a\u80fd\u4e3a {1} \u8bbe\u7f6e\u540d\u4e3a {0} \u7684 Java \u7c7b\u578b\uff0c\u539f\u56e0\u662f\u5176 EJB \u4e3a\u7a7a\u3002
CMDS_Cannot_perform_INFO_=IWAE0070I \u4e0d\u80fd\u6267\u884c\u547d\u4ee4\u8bf7\u6c42\uff0c\u539f\u56e0\u662f\u5bf9\u4e8e\u4ee5\u4e0b\u547d\u4ee4 EJB \u4e3a\u7a7a\uff1a
CMDS_Cannot_add_the_feat_INFO_=IWAE0071I \u4e0d\u80fd\u5c06\u529f\u80fd\u90e8\u4ef6\u6dfb\u52a0\u81f3\u952e\uff0c\u539f\u56e0\u662f\u5bf9\u4e8e\u4ee5\u4e0b\u547d\u4ee4\u529f\u80fd\u90e8\u4ef6\u4e3a\u7a7a\uff1a
CMDS_Cannot_remove_the_INFO_=IWAE0072I \u4e0d\u80fd\u4ece\u952e\u4e2d\u9664\u53bb\u529f\u80fd\u90e8\u4ef6\uff0c\u539f\u56e0\u662f\u5bf9\u4e8e\u4ee5\u4e0b\u547d\u4ee4\u529f\u80fd\u90e8\u4ef6\u4e3a\u7a7a\uff1a
CMDS_Initializing_UI_=-- Java \u751f\u6210 :: \u6b63\u5728\u521d\u59cb\u5316...
CMDS_Generating_UI_=-- Java \u751f\u6210 :: \u6b63\u5728\u751f\u6210...
CMDS_Finishing_UI_=-- Java \u751f\u6210 :: \u6b63\u5728\u5b8c\u6210...
CMDS_Analyzing_UI_=-- Java \u751f\u6210 :: \u6b63\u5728\u5206\u6790...
CMDS_Cancelled_WARNING_=\u5df2\u53d6\u6d88
CMDS_Multiple_EnterpriseBean_Up_INFO_=IWAE0073I \u591a\u4e2a\u4f01\u4e1a Bean \u66f4\u65b0
CMDS_CREATING_TASK_UI_=\u6b63\u5728\u521b\u5efa\u540d\u4e3a\u201c{0}\u201d\u7684 bean
CMDS_UPDATING_TASK_UI_=\u6b63\u5728\u66f4\u65b0\u540d\u4e3a\u201c{0}\u201d\u7684 bean
CMDS_DELETING_TASK_UI_=\u6b63\u5728\u5220\u9664\u540d\u4e3a\u201c{0}\u201d\u7684 bean
CMDS_Updating_Metadata..._UI_=-- \u6b63\u5728\u66f4\u65b0\u5143\u6570\u636e...
Updating=\u6b63\u5728\u66f4\u65b0
New_key_attribute_added_wi=\u5728\u6ca1\u6709\u5c5e\u6027 helper \u7684\u60c5\u51b5\u4e0b\u6dfb\u52a0\u4e86\u65b0\u7684\u952e\u5c5e\u6027\u3002
Error_has_occurred=\u53d1\u751f\u4e86\u9519\u8bef

