blob: 562d8a53caa1d7a018ba0516bea1709723c14257 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.2) on Wed Apr 22 10:19:16 CDT 2020 -->
<title>ValidationEventHandler (EclipseLink 3.0.0, API Reference)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2020-04-22">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ValidationEventHandler (EclipseLink 3.0.0, API Reference)";
}
}
catch(err) {
}
//-->
var data = {"i0":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.0, API Reference</div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">jakarta.xml.bind</a></div>
<h2 title="Interface ValidationEventHandler" class="title">Interface ValidationEventHandler</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="helpers/DefaultValidationEventHandler.html" title="class in jakarta.xml.bind.helpers">DefaultValidationEventHandler</a></code>, <code><a href="util/ValidationEventCollector.html" title="class in jakarta.xml.bind.util">ValidationEventCollector</a></code></dd>
</dl>
<hr>
<pre>public interface <span class="typeNameLabel">ValidationEventHandler</span></pre>
<div class="block">A basic event handler interface for validation errors.
<p>
If an application needs to implement customized event handling, it must
implement this interface and then register it with either the
<a href="Unmarshaller.html#setEventHandler(jakarta.xml.bind.ValidationEventHandler)"><code>Unmarshaller</code></a>,
the <a href="Validator.html#setEventHandler(jakarta.xml.bind.ValidationEventHandler)"><code>Validator</code></a>, or
the <a href="Marshaller.html#setEventHandler(jakarta.xml.bind.ValidationEventHandler)"><code>Marshaller</code></a>.
The JAXB Provider will then report validation errors and warnings encountered
during the unmarshal, marshal, and validate operations to these event
handlers.
<p>
If the <code>handleEvent</code> method throws an unchecked runtime exception,
the JAXB Provider must treat that as if the method returned false, effectively
terminating whatever operation was in progress at the time (unmarshal,
validate, or marshal).
<p>
Modifying the Java content tree within your event handler is undefined
by the specification and may result in unexpected behaviour.
<p>
Failing to return false from the <code>handleEvent</code> method after
encountering a fatal error is undefined by the specification and may result
in unexpected behavior.
<p>
<b>Default Event Handler</b>
<blockquote>
See: <a href="Validator.html#defaulthandler">Validator javadocs</a>
</blockquote></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Unmarshaller.html" title="interface in jakarta.xml.bind"><code>Unmarshaller</code></a>,
<a href="Validator.html" title="interface in jakarta.xml.bind"><code>Validator</code></a>,
<a href="Marshaller.html" title="interface in jakarta.xml.bind"><code>Marshaller</code></a>,
<a href="ValidationEvent.html" title="interface in jakarta.xml.bind"><code>ValidationEvent</code></a>,
<a href="util/ValidationEventCollector.html" title="class in jakarta.xml.bind.util"><code>ValidationEventCollector</code></a></dd>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd><ul><li>Ryan Shoemaker, Sun Microsystems, Inc.</li>
<li>Kohsuke Kawaguchi, Sun Microsystems, Inc.</li>
<li>Joe Fialli, Sun Microsystems, Inc.</li></ul></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, JAXB 1.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handleEvent(jakarta.xml.bind.ValidationEvent)">handleEvent</a></span>&#8203;(<a href="ValidationEvent.html" title="interface in jakarta.xml.bind">ValidationEvent</a>&nbsp;event)</code></th>
<td class="colLast">
<div class="block">Receive notification of a validation warning or error.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="handleEvent(jakarta.xml.bind.ValidationEvent)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>handleEvent</h4>
<pre class="methodSignature">boolean&nbsp;handleEvent&#8203;(<a href="ValidationEvent.html" title="interface in jakarta.xml.bind">ValidationEvent</a>&nbsp;event)</pre>
<div class="block">Receive notification of a validation warning or error.
The ValidationEvent will have a
<a href="ValidationEventLocator.html" title="interface in jakarta.xml.bind"><code>ValidationEventLocator</code></a> embedded in it that
indicates where the error or warning occurred.
<p>
If an unchecked runtime exception is thrown from this method, the JAXB
provider will treat it as if the method returned false and interrupt
the current unmarshal, validate, or marshal operation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the encapsulated validation event information. It is a
provider error if this parameter is null.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the JAXB Provider should attempt to continue the current
unmarshal, validate, or marshal operation after handling this
warning/error, false if the provider should terminate the current
operation with the appropriate <code>UnmarshalException</code>,
<code>ValidationException</code>, or <code>MarshalException</code>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalArgumentException</a></code> - if the event object is null.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.0, API Reference</div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2017&#x2013;2020 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</footer>
</body>
</html>