###############################################################################
# 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
###############################################################################
# This properties file holds all the externalized strings for the Application Client project
#
# :Begin: WebSphere Quality Validation Information :Begin:
#COMPONENTPREFIX CHKJ
#COMPONENTNAMEFOR CHKJ IBM WebSphere Validation
#CMVCPATHNAME ncf/src/java/com/ibm/websphere/validation/applicationclientvalidation.properties
# :End: WebSphere Quality Validation Information :End:


ERROR_APPLICATIONCLIENT_INVALID_APPCLIENT_FILE=CHKJ1000E: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30fb\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30d5\u30a1\u30a4\u30eb\u304c\u7121\u52b9\u3067\u3042\u308b\u305f\u3081\u3001\u59a5\u5f53\u6027\u691c\u67fb\u304c\u5931\u6557\u3057\u307e\u3057\u305f\u3002 \u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u304c\u6709\u52b9\u3067\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002
#EXPLANATION None.
#USERACTION None.

ERROR_APPCLIENT_VALIDATION_FAILED=CHKJ1001E: \u59a5\u5f53\u6027\u691c\u67fb\u5931\u6557:
#EXPLANATION None.
#USERACTION None.

ERROR_EJB_REFS=CHKJ1002E: {0} \u5185\u306b\u89e3\u6c7a\u4e0d\u53ef\u80fd\u306a EJB \u53c2\u7167\u304c\u3042\u308a\u307e\u3059
#EXPLANATION None.
#USERACTION None.

INVALID_DD=CHKJ1003E: \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30fb\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u5185\u306b\u7121\u52b9\u306a\u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u304c\u3042\u308a\u307e\u3059\u3002
#EXPLANATION None.
#USERACTION None.

MESSAGE_APPCLIENT_MISSING_URI=CHKJ1004E: URI {0} \u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30fb\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30d5\u30a1\u30a4\u30eb\u5185\u306e\u9805\u76ee\u306b\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DD_PARSE_LINECOL=CHKJ1005E: \u4e0d\u660e\u306a\u69cb\u6587\u30a8\u30e9\u30fc\u304c\u539f\u56e0\u3067\u3001\u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u3092\u30ed\u30fc\u30c9\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 \u4e0d\u6b63\u306a\u30bb\u30af\u30b7\u30e7\u30f3\u304c {0} \u884c {1} \u5217\u304b\u3089\u59cb\u307e\u3063\u3066\u3044\u307e\u3059\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DD_PARSE_LINE=CHKJ1006E: \u4e0d\u660e\u306a\u69cb\u6587\u30a8\u30e9\u30fc\u304c\u539f\u56e0\u3067\u3001\u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u3092\u30ed\u30fc\u30c9\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 \u4e0d\u6b63\u306a\u30bb\u30af\u30b7\u30e7\u30f3\u304c {0} \u884c\u304b\u3089\u59cb\u307e\u3063\u3066\u3044\u307e\u3059\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DD_PARSE_NOINFO=CHKJ1007E: \u4e0d\u660e\u306a\u69cb\u6587\u30a8\u30e9\u30fc\u304c\u539f\u56e0\u3067\u3001\u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u3092\u30ed\u30fc\u30c9\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002 \u4e0d\u6b63\u306a\u30bb\u30af\u30b7\u30e7\u30f3\u306e\u8b58\u5225\u306b\u5f79\u7acb\u3064\u60c5\u5831\u304c\u3042\u308a\u307e\u305b\u3093\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DD_CANNOT_OPEN_DD=CHKJ1008E: \u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u8a18\u8ff0\u5b50\u3092\u958b\u3051\u306a\u3044\u305f\u3081\u3001\u691c\u8a3c\u304c\u5b8c\u4e86\u3057\u307e\u305b\u3093\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DUP_RES_ENV_REF_ERROR_=IWAE0002E application-client.xml \u5185\u3067\u30ea\u30bd\u30fc\u30b9\u74b0\u5883\u53c2\u7167 "{0}" \u304c\u91cd\u8907\u3057\u3066\u3044\u307e\u3059\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_INVALID_DOC_TYPE_ERROR_=IWAE0003E \u30d7\u30ed\u30b8\u30a7\u30af\u30c8 "{1}" \u5185\u306e application-client.xml \u306e\u6587\u66f8\u30bf\u30a4\u30d7\u30fb\u30d0\u30fc\u30b8\u30e7\u30f3 "{0}" \u306f\u30d0\u30fc\u30b8\u30e7\u30f3 "{2}" \u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
#EXPLANATION None.
#USERACTION None.

APPCLIENT_DUP_EJB_REF_ERROR_=IWAE0004E application-client.xml \u5185\u306e\u30a8\u30f3\u30bf\u30fc\u30d7\u30e9\u30a4\u30ba Bean \u53c2\u7167 "{0}" \u304c\u91cd\u8907\u3057\u3066\u3044\u307e\u3059\u3002
APPCLIENT_MAIN_CLASS_ERROR_=IWAE0035E \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30fb\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u30e1\u30a4\u30f3\u30fb\u30af\u30e9\u30b9\u5c5e\u6027\u3092\u5b9a\u7fa9\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
