Module java.sql.rowset

Class SyncProviderException

所有已实现的接口:
Serializable, Iterable<Throwable>

public class SyncProviderException extends SQLException
表示SyncProvider机制出现错误。如果SyncProvider抽象类扩展遇到从原始数据源读取或写入时的违规,将创建此异常。

如果实现了这样做,SyncProvider对象还可以创建一个SyncResolver对象,并在构造时使用它初始化SyncProviderException对象,或者稍后使用SyncProvider对象设置它。

方法acceptChanges在写入器完成冲突检查并发现一个或多个冲突后将抛出此异常。应用程序可以捕获SyncProviderException对象并调用其getSyncResolver方法以获取其SyncResolver对象。有关示例,请参阅接口注释中的SyncResolver的代码片段。此SyncResolver对象将反映生成异常的RowSet对象,但它只包含与数据源中存在冲突的值。SyncResolver对象中的所有其他值将为null

SyncResolver对象可用于检查和解决每一行中的冲突,然后转到下一行中的冲突以重复该过程。

SyncProviderException对象可能包含或不包含导致异常的条件的描述。如果有描述,可以调用继承的方法getMessage来检索描述。

自版本:
1.5
参见:
  • Constructor Details

    • SyncProviderException

      public SyncProviderException()
      创建一个没有详细消息的新SyncProviderException对象。
    • SyncProviderException

      public SyncProviderException(String msg)
      使用指定的详细消息构造SyncProviderException对象。
      参数:
      msg - 详细消息
    • SyncProviderException

      public SyncProviderException(SyncResolver syncResolver)
      使用指定的SyncResolver实例构造SyncProviderException对象。
      参数:
      syncResolver - 用于处理同步冲突的SyncResolver实例
      抛出:
      IllegalArgumentException - 如果SyncResolver对象为null
  • Method Details

    • getSyncResolver

      public SyncResolver getSyncResolver()
      检索为此SyncProviderException对象设置的SyncResolver对象,如果未设置,则返回包含在参考实现中的默认SyncResolver实现的实例。

      如果抛出SyncProviderException对象,应用程序可以使用此方法生成一个SyncResolver对象,用于解决导致抛出异常的冲突。

      返回:
      为此SyncProviderException对象设置的SyncResolver对象,如果未设置,则返回默认SyncResolver实现的实例。此外,如果使用SyncResolver()SyncResolver(String)构造函数实例化SyncResolver实例,则还将返回默认SyncResolver实现。
    • setSyncResolver

      public void setSyncResolver(SyncResolver syncResolver)
      为此SyncProviderException对象设置SyncResolver对象为所提供的对象。如果提供的参数为null,则调用getSyncResolver方法将返回SyncResolver接口的默认参考实现。
      参数:
      syncResolver - 要设置的SyncResolver对象;不能为null
      抛出:
      IllegalArgumentException - 如果SyncResolver对象为null
      参见: