#
# Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

# SAAJ ResourceBundle properties file
# Contains Log messages for ver1_2 pkg

SAAJ0401.ver1_2.no.encodingstyle.in.body=SAAJ0401: encodingStyle \uC18D\uC131\uC740 Body\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0402.ver1_2.only.fault.allowed.in.body=SAAJ0402: SOAPBody\uC5D0\uC11C\uB294 Fault\uB97C \uC81C\uC678\uD55C \uB2E4\uB978 \uC694\uC18C\uAC00 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
SAAJ0403.ver1_2.no.encodingStyle.in.detail=SAAJ0403: encodingStyle \uC18D\uC131\uC740 Detail\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0404.ver1_2.no.encodingStyle.in.envelope=SAAJ0404: encodingStyle \uC18D\uC131\uC740 Envelope\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0405.ver1_2.body.must.last.in.envelope=SAAJ0405: Body\uB294 SOAPEnvelope\uC758 \uB9C8\uC9C0\uB9C9 \uC694\uC18C\uC5EC\uC57C \uD569\uB2C8\uB2E4.
SAAJ0406.ver1_2.only.header.body.allowed.in.envelope=SAAJ0406: Envelope\uC5D0\uB294 Header\uC640 Body \uC774\uC678\uC758 \uB2E4\uB978 \uC694\uC18C\uAC00 \uD3EC\uD568\uB420 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0407.ver1_2.no.encodingStyle.in.fault=SAAJ0407: encodingStyle \uC18D\uC131\uC740 Fault\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0408.ver1_2.no.encodingStyle.in.fault.child=SAAJ0408: encodingStyle \uC18D\uC131\uC740 Fault \uD558\uC704 \uC694\uC18C\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0409.ver1_2.no.encodingstyle.in.header=SAAJ0401: encodingStyle \uC18D\uC131\uC740 Header\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0410.ver1_2.no.null.to.addNotUnderstoodHeader=SAAJ0410: addNotUnderstoodHeaderElement\uC5D0 NULL\uC744 \uC804\uB2EC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0411.ver1_2.no.null.supportedURIs=SAAJ0411: \uC778\uC218\uB294 \uB110\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. supportedURIs\uB294 \uB110\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0412.ver1_2.no.empty.list.of.supportedURIs=SAAJ0412: \uC9C0\uC6D0\uB418\uB294 URI \uBAA9\uB85D\uC740 \uBE44\uC6CC \uB458 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0413.ver1_2.header.elems.must.be.ns.qualified=SAAJ0413: SOAP 1.2 Header \uC694\uC18C\uB294 \uC815\uADDC\uD654\uB41C \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC5EC\uC57C \uD569\uB2C8\uB2E4.
#SAAJ0414.ver1_2.actor.unsupported.in.soap1.2=SAAJ0414: Actor not supported by SOAP 1.2
SAAJ0415.ver1_2.msg.invalid.soap1.2=SAAJ0415: InputStream\uC774 \uC801\uD569\uD55C SOAP 1.2 \uBA54\uC2DC\uC9C0\uB97C \uB098\uD0C0\uB0B4\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
# {0} - element qname
SAAJ0416.ver1_2.adding.text.not.legal=SAAJ0416: {0}\uC5D0 \uD14D\uC2A4\uD2B8\uB97C \uCD94\uAC00\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0417.ver1_2.qname.not.ns.qualified=SAAJ0417: addNotUnderstoodHeaderElement\uC5D0 \uC804\uB2EC\uB41C QName\uC740 \uC815\uADDC\uD654\uB41C \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC5EC\uC57C \uD569\uB2C8\uB2E4.

#SOAPFault related errors
SAAJ0430.ver1_2.locale.required=SAAJ0430: \uB85C\uCF00\uC77C\uC774 \uD544\uC694\uD558\uBA70 \uB110\uC774 \uC544\uB2C8\uC5B4\uC57C \uD569\uB2C8\uB2E4.
SAAJ0431.ver1_2.xml.lang.missing=SAAJ0431: "xml:lang" \uC18D\uC131\uC774 Text \uC694\uC18C\uC5D0 \uC5C6\uC2B5\uB2C8\uB2E4.
SAAJ0432.ver1_2.subcode.not.ns.qualified=SAAJ0432: \uD558\uC704 \uCF54\uB4DC\uB294 \uC815\uADDC\uD654\uB41C \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC5EC\uC57C \uD569\uB2C8\uB2E4.
#SAAJ0433.ver1_2.could.not.locate.prefix.for.uri=SAAJ0433: Unable to locate prefix for namespace value {0}
SAAJ0434.ver1_2.text.element.not.present=SAAJ0434: env:Text\uB294 env:Reason\uC5D0 \uC788\uC5B4\uC57C \uD569\uB2C8\uB2E4.
SAAJ0435.ver1_2.code.not.standard=SAAJ0435: {0}\uC740(\uB294) \uD45C\uC900 \uCF54\uB4DC \uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
SAAJ0436.ver1_2.detail.exists.error=SAAJ0436: Detail\uC744 \uCD94\uAC00\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. Detail\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4.
SAAJ0437.ver1_2.version.mismatch.error=SAAJ0437: Detail \uC694\uC18C\uC5D0 \uB300\uD55C SOAP \uBC84\uC804\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. SOAP 1.2\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.
