###############################################################################
# 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=Inicializa\u00e7\u00e3o do plug-in do provedor ejb - Problema ao inicializar plug-in
Ejbext_provider_plugin_prob=Inicializa\u00e7\u00e3o do plug-in do provedor ejbext - Problema ao inicializar plug-in
EJB_UI_STARTUP=EJB UI STARTUP
EJB_Path__=Caminho EJB:
Size__=Tamanho:
Edit_the_bean_class=Editar a classe do bean
EJB_Tree=\u00c1rvore EJB
EJB_Jar_Components=Componentes de JAR EJB
EJB_Models=Modelos EJB
EJB_Features=Recursos EJB
Exception_loading_plugin=Exce\u00e7\u00e3o no carregamento do plug-in
Create=Criar
Create_Attribute...=Criar Atributo...
createAttribute=createAttribute
Edit=Editar
Add_To_Key=Incluir na Chave
delete=excluir
Unknown=Desconhecido
Remove_From_Key=Remover da Chave
Delete=Excluir
Delete_Attribute...=Excluir Atributo...
additions=adi\u00e7\u00f5es
CMDS_Cannot_reflect_JavaClass_ERROR_=IWAE0068E N\u00e3o \u00e9 poss\u00edvel refletir JavaClass porque o nome n\u00e3o est\u00e1 definido para
CMDS_CLASS_SET_FAILED_STRING_ERROR_=IWAE0069E O tipo Java denominado {0} n\u00e3o p\u00f4de ser definido para {1} porque seu EJB \u00e9 nulo.
CMDS_Cannot_perform_INFO_=IWAE0070I N\u00e3o \u00e9 poss\u00edvel executar o pedido de comando porque o EJB \u00e9 nulo para o comando:
CMDS_Cannot_add_the_feat_INFO_=IWAE0071I N\u00e3o \u00e9 poss\u00edvel incluir o recurso na chave porque o recurso \u00e9 nulo para o comando:
CMDS_Cannot_remove_the_INFO_=IWAE0072I N\u00e3o \u00e9 poss\u00edvel remover o recurso da chave porque o recurso \u00e9 nulo para o comando:
CMDS_Initializing_UI_=-- Java Generation :: Inicializando...
CMDS_Generating_UI_=-- Java Generation :: Gerando...
CMDS_Finishing_UI_=-- Java Generation :: Concluindo...
CMDS_Analyzing_UI_=-- Java Generation :: Analisando...
CMDS_Cancelled_WARNING_=Cancelado
CMDS_Multiple_EnterpriseBean_Up_INFO_=IWAE0073I Atualiza\u00e7\u00f5es de V\u00e1rios EnterpriseBean
CMDS_CREATING_TASK_UI_=Criando bean nomeado "{0}"
CMDS_UPDATING_TASK_UI_=Atualizando bean nomeado "{0}"
CMDS_DELETING_TASK_UI_=Excluindo bean nomeado "{0}"
CMDS_Updating_Metadata..._UI_=-- Atualizando Metadados...
Updating=Atualizando
New_key_attribute_added_wi=Novo atributo de chave inclu\u00eddo sem o auxiliar de atributos.
Error_has_occurred=Ocorreu um erro

