SyncProviderException (Java Platform SE 8 ) (original) (raw)
- java.lang.Throwable
- java.lang.Exception
- java.sql.SQLException
* * javax.sql.rowset.spi.SyncProviderException
- java.sql.SQLException
- java.lang.Exception
All Implemented Interfaces:
Serializable, Iterable<Throwable>
public class SyncProviderException
extends SQLException
Indicates an error with the SyncProvider
mechanism. This exception is created by a SyncProvider
abstract class extension if it encounters violations in reading from or writing to the originating data source.
If it is implemented to do so, the SyncProvider
object may also create aSyncResolver
object and either initialize the SyncProviderException
object with it at construction time or set it with the SyncProvider
object at a later time.
The method acceptChanges
will throw this exception after the writer has finished checking for conflicts and has found one or more conflicts. An application may catch a SyncProviderException
object and call itsgetSyncResolver
method to get its SyncResolver
object. See the code fragment in the interface comment forSyncResolver for an example. This SyncResolver
object will mirror the RowSet
object that generated the exception, except that it will contain only the values from the data source that are in conflict. All other values in the SyncResolver
object will be null
.
The SyncResolver
object may be used to examine and resolve each conflict in a row and then go to the next row with a conflict to repeat the procedure.
A SyncProviderException
object may or may not contain a description of the condition causing the exception. The inherited method getMessage
may be called to retrieve the description if there is one.
See Also:
SyncFactory, SyncResolver, SyncFactoryException, Serialized Form
Constructor Summary
Constructors
Constructor Description SyncProviderException() Creates a new SyncProviderException object without a detail message. SyncProviderException(String msg) Constructs a SyncProviderException object with the specified detail message. SyncProviderException(SyncResolver syncResolver) Constructs a SyncProviderException object with the specifiedSyncResolver instance. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description SyncResolver getSyncResolver() Retrieves the SyncResolver object that has been set for this SyncProviderException object, or if none has been set, an instance of the default SyncResolver implementation included in the reference implementation. void setSyncResolver(SyncResolver syncResolver) Sets the SyncResolver object for thisSyncProviderException object to the one supplied. * ### Methods inherited from class java.sql.[SQLException](../../../../java/sql/SQLException.html "class in java.sql") `[getErrorCode](../../../../java/sql/SQLException.html#getErrorCode--), [getNextException](../../../../java/sql/SQLException.html#getNextException--), [getSQLState](../../../../java/sql/SQLException.html#getSQLState--), [iterator](../../../../java/sql/SQLException.html#iterator--), [setNextException](../../../../java/sql/SQLException.html#setNextException-java.sql.SQLException-)` * ### Methods inherited from class java.lang.[Throwable](../../../../java/lang/Throwable.html "class in java.lang") `[addSuppressed](../../../../java/lang/Throwable.html#addSuppressed-java.lang.Throwable-), [fillInStackTrace](../../../../java/lang/Throwable.html#fillInStackTrace--), [getCause](../../../../java/lang/Throwable.html#getCause--), [getLocalizedMessage](../../../../java/lang/Throwable.html#getLocalizedMessage--), [getMessage](../../../../java/lang/Throwable.html#getMessage--), [getStackTrace](../../../../java/lang/Throwable.html#getStackTrace--), [getSuppressed](../../../../java/lang/Throwable.html#getSuppressed--), [initCause](../../../../java/lang/Throwable.html#initCause-java.lang.Throwable-), [printStackTrace](../../../../java/lang/Throwable.html#printStackTrace--), [printStackTrace](../../../../java/lang/Throwable.html#printStackTrace-java.io.PrintStream-), [printStackTrace](../../../../java/lang/Throwable.html#printStackTrace-java.io.PrintWriter-), [setStackTrace](../../../../java/lang/Throwable.html#setStackTrace-java.lang.StackTraceElement:A-), [toString](../../../../java/lang/Throwable.html#toString--)` * ### Methods inherited from class java.lang.[Object](../../../../java/lang/Object.html "class in java.lang") `[clone](../../../../java/lang/Object.html#clone--), [equals](../../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../../java/lang/Object.html#finalize--), [getClass](../../../../java/lang/Object.html#getClass--), [hashCode](../../../../java/lang/Object.html#hashCode--), [notify](../../../../java/lang/Object.html#notify--), [notifyAll](../../../../java/lang/Object.html#notifyAll--), [wait](../../../../java/lang/Object.html#wait--), [wait](../../../../java/lang/Object.html#wait-long-), [wait](../../../../java/lang/Object.html#wait-long-int-)` * ### Methods inherited from interface java.lang.[Iterable](../../../../java/lang/Iterable.html "interface in java.lang") `[forEach](../../../../java/lang/Iterable.html#forEach-java.util.function.Consumer-), [spliterator](../../../../java/lang/Iterable.html#spliterator--)`
Constructor Detail
* #### SyncProviderException public SyncProviderException() Creates a new `SyncProviderException` object without a detail message. * #### SyncProviderException public SyncProviderException([String](../../../../java/lang/String.html "class in java.lang") msg) Constructs a `SyncProviderException` object with the specified detail message. Parameters: `msg` \- the detail message * #### SyncProviderException public SyncProviderException([SyncResolver](../../../../javax/sql/rowset/spi/SyncResolver.html "interface in javax.sql.rowset.spi") syncResolver) Constructs a `SyncProviderException` object with the specified`SyncResolver` instance. Parameters: `syncResolver` \- the `SyncResolver` instance used to to process the synchronization conflicts Throws: `[IllegalArgumentException](../../../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if the `SyncResolver` object is `null`.
Method Detail
* #### getSyncResolver public [SyncResolver](../../../../javax/sql/rowset/spi/SyncResolver.html "interface in javax.sql.rowset.spi") getSyncResolver() Retrieves the `SyncResolver` object that has been set for this `SyncProviderException` object, or if none has been set, an instance of the default `SyncResolver` implementation included in the reference implementation. If a `SyncProviderException` object is thrown, an application may use this method to generate a `SyncResolver` object with which to resolve the conflict or conflicts that caused the exception to be thrown. Returns: the `SyncResolver` object set for this`SyncProviderException` object or, if none has been set, an instance of the default `SyncResolver` implementation. In addition, the default `SyncResolver` implementation is also returned if the `SyncResolver()` or`SyncResolver(String)` constructors are used to instantiate the `SyncResolver` instance. * #### setSyncResolver public void setSyncResolver([SyncResolver](../../../../javax/sql/rowset/spi/SyncResolver.html "interface in javax.sql.rowset.spi") syncResolver) Sets the `SyncResolver` object for this`SyncProviderException` object to the one supplied. If the argument supplied is `null`, a call to the method`getSyncResolver` will return the default reference implementation of the `SyncResolver` interface. Parameters: `syncResolver` \- the `SyncResolver` object to be set; cannot be `null` Throws: `[IllegalArgumentException](../../../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if the `SyncResolver` object is `null`. See Also: [getSyncResolver()](../../../../javax/sql/rowset/spi/SyncProviderException.html#getSyncResolver--)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.