File mysql-connector-java-jdbc-4.1.patch of Package mysql-connector-java

Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/CallableStatement.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/CallableStatement.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/CallableStatement.java
@@ -32,11 +32,15 @@ import java.net.URL;
 import java.sql.Array;
 import java.sql.Blob;
 import java.sql.Clob;
+import java.sql.NClob;
 import java.sql.Date;
 import java.sql.ParameterMetaData;
 import java.sql.Ref;
 import java.sql.ResultSet;
+import java.sql.RowId;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import java.sql.Time;
 import java.sql.Timestamp;
 import java.sql.Types;
@@ -410,10 +414,10 @@ public class CallableStatement extends P
          *             If no object found that implements the interface
          * @since 1.6
          */
-        public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+        public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
             try {
                 // This works for classes that aren't actually wrapping anything
-                return Util.cast(iface, this);
+                return iface.cast(this);
             } catch (ClassCastException cce) {
                 throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor());
             }
@@ -2450,4 +2454,95 @@ public class CallableStatement extends P
             }
         }
     }
+
+	@Override
+	public void setNClob(String parameterName, NClob value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(String parameterName, Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(String parameterName, Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getCharacterStream(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getCharacterStream(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob (int parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob (String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNString(String parameterName, String value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setRowId(String parameterName, RowId x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ConnectionImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ConnectionImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ConnectionImpl.java
@@ -35,11 +35,16 @@ import java.nio.charset.Charset;
 import java.nio.charset.CharsetEncoder;
 import java.sql.Blob;
 import java.sql.DatabaseMetaData;
+import java.sql.NClob;
 import java.sql.ResultSet;
 import java.sql.SQLException;
+import java.sql.SQLXML;
 import java.sql.SQLPermission;
 import java.sql.SQLWarning;
 import java.sql.Savepoint;
+import java.sql.SQLClientInfoException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.Struct;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Collections;
@@ -5565,4 +5570,71 @@ public class ConnectionImpl extends Conn
     public void setProfilerEventHandlerInstance(ProfilerEventHandler h) {
         this.eventSink = h;
     }
+
+	@Override
+	public Struct createStruct(String typeName, Object[] attributes) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getClientInfo(String name) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Properties getClientInfo() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClientInfo(String name, String value)
+	throws SQLClientInfoException {
+		//throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+		//throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isValid(int timeout) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML createSQLXML() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob createNClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Blob createBlob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Clob createClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/DatabaseMetaData.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/DatabaseMetaData.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/DatabaseMetaData.java
@@ -33,6 +33,8 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.sql.Types;
+import java.sql.RowIdLifetime;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -7869,4 +7871,25 @@ public class DatabaseMetaData implements
     public boolean generatedKeyAlwaysReturned() throws SQLException {
         return true;
     }
+
+	@Override
+	public boolean autoCommitFailureClosesAllResultSets() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowIdLifetime getRowIdLifetime() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/Driver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/Driver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/Driver.java
@@ -24,6 +24,8 @@
 package com.mysql.jdbc;
 
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.util.logging.Logger;
 
 /**
  * The Java SQL framework allows for multiple database drivers. Each driver should supply a class that implements the Driver interface
@@ -61,4 +63,10 @@ public class Driver extends NonRegisteri
     public Driver() throws SQLException {
         // Required for Class.forName().newInstance()
     }
+
+	@Override
+	public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4Connection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4Connection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4Connection.java
@@ -27,9 +27,11 @@ import java.sql.Blob;
 import java.sql.Clob;
 import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLXML;
 import java.sql.NClob;
 import java.sql.Struct;
+import java.util.concurrent.Executor;
 import java.util.Properties;
 import java.util.TimerTask;
 
@@ -197,7 +199,8 @@ public class JDBC4Connection extends Con
     /**
      * @see java.sql.Connection#createClob()
      */
-    public Clob createClob() {
+    @Override
+    public com.mysql.jdbc.Clob createClob() throws SQLException {
         return new com.mysql.jdbc.Clob(getExceptionInterceptor());
     }
 
@@ -233,4 +236,25 @@ public class JDBC4Connection extends Con
             return this.infoProvider;
         }
     }
+
+	public int getNetworkTimeout() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setNetworkTimeout(Executor executor, int millis) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void abort(Executor executor) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public String getSchema() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setSchema(String schema) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
@@ -27,9 +27,11 @@ import java.sql.Blob;
 import java.sql.Clob;
 import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLXML;
 import java.sql.NClob;
 import java.sql.Struct;
+import java.util.concurrent.Executor;
 import java.util.Properties;
 import java.util.TimerTask;
 
@@ -100,21 +102,24 @@ public class JDBC4LoadBalancedMySQLConne
     /**
      * @see java.sql.Connection#createBlob()
      */
-    public Blob createBlob() {
+    @Override
+    public Blob createBlob() throws SQLException {
         return this.getJDBC4Connection().createBlob();
     }
 
     /**
      * @see java.sql.Connection#createClob()
      */
-    public Clob createClob() {
+    @Override
+    public com.mysql.jdbc.Clob createClob() throws SQLException {
         return this.getJDBC4Connection().createClob();
     }
 
     /**
      * @see java.sql.Connection#createNClob()
      */
-    public NClob createNClob() {
+    @Override
+    public NClob createNClob() throws SQLException {
         return this.getJDBC4Connection().createNClob();
     }
 
@@ -123,4 +128,25 @@ public class JDBC4LoadBalancedMySQLConne
             return this.getJDBC4Connection().getClientInfoProviderImpl();
         }
     }
+
+	public int getNetworkTimeout() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setNetworkTimeout(Executor executor, int millis) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void abort(Executor executor) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public String getSchema() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setSchema(String schema) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4MySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MySQLConnection.java
@@ -59,10 +59,13 @@ public interface JDBC4MySQLConnection ex
 
     public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException;
 
-    public Blob createBlob();
+    @Override
+    public Blob createBlob() throws SQLException;
 
-    public Clob createClob();
+    @Override
+    public Clob createClob() throws SQLException;
 
-    public NClob createNClob();
+    @Override
+    public NClob createNClob() throws SQLException;
 
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/MysqlParameterMetadata.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/MysqlParameterMetadata.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/MysqlParameterMetadata.java
@@ -25,6 +25,7 @@ package com.mysql.jdbc;
 
 import java.sql.ParameterMetaData;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.Types;
 
 public class MysqlParameterMetadata implements ParameterMetaData {
@@ -199,10 +200,10 @@ public class MysqlParameterMetadata impl
      *             If no object found that implements the interface
      * @since 1.6
      */
-    public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+    public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
         try {
             // This works for classes that aren't actually wrapping anything
-            return Util.cast(iface, this);
+            return iface.cast(this);
         } catch (ClassCastException cce) {
             throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), SQLError.SQL_STATE_ILLEGAL_ARGUMENT, this.exceptionInterceptor);
         }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/NonRegisteringDriver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/NonRegisteringDriver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/NonRegisteringDriver.java
@@ -31,6 +31,7 @@ import java.lang.ref.ReferenceQueue;
 import java.net.URLDecoder;
 import java.sql.DriverPropertyInfo;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -39,6 +40,9 @@ import java.util.Properties;
 import java.util.StringTokenizer;
 import java.util.concurrent.ConcurrentHashMap;
 
+
+import java.util.logging.Logger;
+
 /**
  * The Java SQL framework allows for multiple database drivers. Each driver should supply a class that implements the Driver interface
  * 
@@ -904,4 +908,9 @@ public class NonRegisteringDriver implem
             }
         }
     }
+
+	@Override
+	public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/PreparedStatement.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/PreparedStatement.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/PreparedStatement.java
@@ -41,6 +41,7 @@ import java.nio.charset.Charset;
 import java.nio.charset.CharsetEncoder;
 import java.sql.Array;
 import java.sql.Clob;
+import java.sql.NClob;
 import java.sql.DatabaseMetaData;
 import java.sql.Date;
 import java.sql.ParameterMetaData;
@@ -49,6 +50,9 @@ import java.sql.SQLException;
 import java.sql.Time;
 import java.sql.Timestamp;
 import java.sql.Types;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
+import java.sql.RowId;
 import java.text.ParsePosition;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
@@ -5166,4 +5170,20 @@ public class PreparedStatement extends c
         return StringUtils.startsWithIgnoreCaseAndWs(sql, "INSERT", statementStartPos)
                 && StringUtils.indexOfIgnoreCase(statementStartPos, sql, "SELECT", "\"'`", "\"'`", StringUtils.SEARCH_MODE__MRK_COM_WS) == -1 && rewritableOdku;
     }
+
+	@Override
+	public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(int parameterIndex, NClob value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setRowId(int parameterIndex, RowId x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ReplicationConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ReplicationConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ReplicationConnection.java
@@ -23,6 +23,12 @@
 
 package com.mysql.jdbc;
 
+import java.sql.Blob;
+import java.sql.NClob;
+import java.sql.SQLXML;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLClientInfoException;
+import java.sql.Struct;
 import java.sql.CallableStatement;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
@@ -2972,6 +2978,69 @@ public class ReplicationConnection imple
         getCurrentConnection().setSocksProxyHost(socksProxyHost);
     }
 
+
+	@Override
+	public Struct createStruct(String typeName, Object[] attributes) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getClientInfo(String name) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Properties getClientInfo() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClientInfo(String name, String value)     throws SQLClientInfoException {
+	}
+
+	@Override
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+	}
+
+	@Override
+	public boolean isValid(int timeout) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML createSQLXML() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob createNClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Blob createBlob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Clob createClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
     public String getSocksProxyHost() {
         return getCurrentConnection().getSocksProxyHost();
     }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ResultSetImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetImpl.java
@@ -27,6 +27,7 @@ import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.ObjectInputStream;
+import java.io.Reader;
 import java.io.StringReader;
 import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Constructor;
@@ -36,9 +37,13 @@ import java.net.MalformedURLException;
 import java.net.URL;
 import java.sql.Array;
 import java.sql.Date;
+import java.sql.NClob;
 import java.sql.Ref;
+import java.sql.RowId;
 import java.sql.SQLException;
 import java.sql.SQLWarning;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import java.sql.Time;
 import java.sql.Timestamp;
 import java.sql.Types;
@@ -7917,4 +7922,250 @@ public class ResultSetImpl implements Re
     protected ExceptionInterceptor getExceptionInterceptor() {
         return this.exceptionInterceptor;
     }
+
+	@Override
+	public void updateNClob(int columnIndex, NClob nClob) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(String columnLabel,  Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(int columnIndex,  Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(String columnLabel,  Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(int columnIndex,  Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateClob(int columnIndex,  Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateClob(String columnLabel,  Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateClob(int columnIndex,  Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateClob(String columnLabel,  Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBinaryStream(String columnLabel, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateAsciiStream(String columnLabel, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateCharacterStream(int columnIndex, java.io.Reader x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBinaryStream(int columnIndex, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateAsciiStream(int columnIndex, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNCharacterStream(int columnIndex, java.io.Reader x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBinaryStream(String columnLabel, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateAsciiStream(String columnLabel, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateCharacterStream(int columnIndex, java.io.Reader x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateBinaryStream(int columnIndex, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateAsciiStream(int columnIndex, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNCharacterStream(int columnIndex, java.io.Reader x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(int columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(String columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(int columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(String columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(int columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(String columnLabel) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob(int columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob(String columnLabel) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(String columnLabel,  NClob nClob) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNString(String columnLabel, String nString) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNString(int columnLabel, String nString) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public int getHoldability() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateRowId(int columnIndex, RowId x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateRowId(String columnLabel, RowId x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(int columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(String columnIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetMetaData.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ResultSetMetaData.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetMetaData.java
@@ -23,7 +23,9 @@
 
 package com.mysql.jdbc;
 
+import java.sql.NClob;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.Types;
 
 /**
@@ -832,12 +834,16 @@ public class ResultSetMetaData implement
      *             If no object found that implements the interface
      * @since 1.6
      */
-    public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+    public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
         try {
             // This works for classes that aren't actually wrapping anything
-            return Util.cast(iface, this);
+            return iface.cast(this);
         } catch (ClassCastException cce) {
             throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), SQLError.SQL_STATE_ILLEGAL_ARGUMENT, this.exceptionInterceptor);
         }
     }
+
+    public void updateNClob(int columnIndex, NClob nClob) throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/StatementImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/StatementImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/StatementImpl.java
@@ -31,6 +31,8 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.SQLWarning;
 import java.sql.Types;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.*;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Collections;
@@ -2700,10 +2702,10 @@ public class StatementImpl implements St
      *             If no object found that implements the interface
      * @since 1.6
      */
-    public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+    public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
         try {
             // This works for classes that aren't actually wrapping anything
-            return Util.cast(iface, this);
+            return iface.cast(this);
         } catch (ClassCastException cce) {
             throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor());
         }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
@@ -33,8 +33,12 @@ import java.sql.Blob;
 import java.sql.CallableStatement;
 import java.sql.Clob;
 import java.sql.Date;
+import java.sql.NClob;
 import java.sql.Ref;
+import java.sql.RowId;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import java.sql.Time;
 import java.sql.Timestamp;
 import java.util.Calendar;
@@ -2345,4 +2349,169 @@ public class CallableStatementWrapper ex
     //		throw SQLError.notImplemented();
     //	}
 
+	@Override
+	public <T> T getObject(int parameterIndex, Class<T> type) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T getObject(String parameterName, Class<T> type) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBlob(String parameterName, InputStream inputStream) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClob(String parameterName, Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNCharacterStream(String parameterName, Reader value) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setCharacterStream(String parameterName, java.io.Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBinaryStream(String parameterName, java.io.InputStream x) throws SQLException {
+    	throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setAsciiStream(String parameterName, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setCharacterStream(String parameterName, java.io.Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBinaryStream(String parameterName, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setAsciiStream(String parameterName, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClob (String parameterName, Clob x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBlob (String parameterName, Blob x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getCharacterStream(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getCharacterStream(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.io.Reader getNCharacterStream(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getNString(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob (String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob getNClob (int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(String parameterName, Reader reader, long length) throws SQLException  {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBlob(String parameterName, InputStream inputStream, long length)	throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClob(String parameterName, Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(String parameterName, NClob value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNString(String parameterName, String value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setRowId(String parameterName, RowId x) throws SQLException  {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(String parameterName) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public RowId getRowId(int parameterIndex) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
@@ -24,8 +24,15 @@
 package com.mysql.jdbc.jdbc2.optional;
 
 import java.lang.reflect.Constructor;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.NClob;
 import java.sql.SQLException;
+import java.sql.SQLXML;
 import java.sql.Savepoint;
+import java.sql.SQLClientInfoException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.Struct;
 import java.sql.Statement;
 import java.util.Map;
 import java.util.Properties;
@@ -2836,4 +2843,67 @@ public class ConnectionWrapper extends W
     public void setEnabledSSLCipherSuites(String cipherSuites) {
         this.mc.setEnabledSSLCipherSuites(cipherSuites);
     }
+
+    public Struct createStruct(String typeName, Object[] attributes) throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public String getClientInfo(String name) throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public Properties getClientInfo() throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+    @Override
+    public void setClientInfo(String name, String value) throws SQLClientInfoException {
+            //throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public void setClientInfo(Properties properties) throws SQLClientInfoException {
+            //throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public boolean isValid(int timeout) throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public SQLXML createSQLXML() throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+	@Override
+	public Blob createBlob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+    @Override
+    public NClob createNClob() throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public Clob createClob() throws SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+    @Override
+    public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+            throw new SQLFeatureNotSupportedException("Not supported");
+    }
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
@@ -26,8 +26,10 @@ package com.mysql.jdbc.jdbc2.optional;
 import java.io.PrintWriter;
 import java.io.Serializable;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.Iterator;
 import java.util.Properties;
+import java.util.logging.Logger;
 
 import javax.naming.NamingException;
 import javax.naming.Reference;
@@ -429,4 +431,20 @@ public class MysqlDataSource extends Con
     //	public <T> T unwrap(Class<T> iface) throws SQLException {
     //		throw SQLError.notImplemented();
     //	}
+
+	@Override
+	public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
@@ -26,6 +26,7 @@ package com.mysql.jdbc.jdbc2.optional;
 import java.lang.reflect.Constructor;
 import java.sql.Connection;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
@@ -33,6 +34,7 @@ import java.util.Map;
 import javax.sql.ConnectionEvent;
 import javax.sql.ConnectionEventListener;
 import javax.sql.PooledConnection;
+import javax.sql.StatementEventListener;
 
 import com.mysql.jdbc.ExceptionInterceptor;
 import com.mysql.jdbc.SQLError;
@@ -230,4 +232,13 @@ public class MysqlPooledConnection imple
     protected ExceptionInterceptor getExceptionInterceptor() {
         return this.exceptionInterceptor;
     }
-}
\ No newline at end of file
+
+	@Override
+	public void addStatementEventListener(StatementEventListener listener) {
+        }
+
+	@Override
+	public void removeStatementEventListener(StatementEventListener listener) {
+        }
+
+}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
@@ -32,12 +32,16 @@ import java.sql.Array;
 import java.sql.Blob;
 import java.sql.Clob;
 import java.sql.Date;
+import java.sql.NClob;
 import java.sql.ParameterMetaData;
 import java.sql.PreparedStatement;
 import java.sql.Ref;
 import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
+import java.sql.RowId;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import java.sql.Time;
 import java.sql.Timestamp;
 import java.util.Calendar;
@@ -1091,4 +1095,107 @@ public class PreparedStatementWrapper ex
     //	public Object unwrap(Class arg0) throws SQLException {
     //		throw SQLError.notImplemented();
     //	}
+
+	public void setNClob(String parameterName, NClob value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setNClob(String parameterName, Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	public void setNClob(String parameterName, Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(int parameterName, NClob value) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(int parameterName, Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNClob(int parameterName, Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClob(int parameterIndex, Reader reader) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setCharacterStream(int parameterIndex, java.io.Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBinaryStream(int parameterIndex, java.io.InputStream x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setAsciiStream(int parameterIndex, java.io.InputStream x) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setCharacterStream(int parameterIndex, java.io.Reader reader, long length) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBinaryStream(int parameterIndex, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setAsciiStream(int parameterIndex, java.io.InputStream x, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClob(int parameterIndex, Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setNString(int parameterIndex, String value) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setRowId(int parameterIndex, RowId x) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
@@ -27,6 +27,7 @@ import java.lang.reflect.Constructor;
 import java.sql.Connection;
 import java.sql.ResultSet;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLWarning;
 import java.sql.Statement;
 
@@ -767,4 +768,40 @@ public class StatementWrapper extends Wr
             checkAndFireConnectionError(sqlEx);
         }
     }
+
+	@Override
+	public boolean isCloseOnCompletion() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void closeOnCompletion() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isPoolable()  throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setPoolable(boolean poolable) throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isClosed() throws SQLException{
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/testsuite/regression/StatementRegressionTest.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/testsuite/regression/StatementRegressionTest.java
+++ mysql-connector-java-5.1.35/src/testsuite/regression/StatementRegressionTest.java
@@ -52,6 +52,11 @@ import java.sql.Ref;
 import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.NClob;
+import java.sql.RowId;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLXML;
 import java.sql.SQLWarning;
 import java.sql.Statement;
 import java.sql.Time;
@@ -2320,7 +2325,8 @@ public class StatementRegressionTest ext
 
         try {
             pStmt = this.conn.prepareStatement("INSERT INTO testNullClob VALUES (?)");
-            pStmt.setClob(1, null);
+            Clob x = null;
+            pStmt.setClob(1, x);
             pStmt.executeUpdate();
         } finally {
             if (pStmt != null) {
@@ -4606,6 +4612,271 @@ public class StatementRegressionTest ext
             public int getBytesSize() throws SQLException {
                 return 0;
             }
+	@Override
+	public <T> T getObject(int columnIndex, Class<T> type) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+	@Override
+	public <T> T getObject(String columnLabel, Class<T> type) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+	@Override
+	public void updateNClob(int columnIndex, NClob nClob) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateNClob(String columnLabel,  Reader reader) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNClob(int columnIndex,  Reader reader, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNClob(String columnLabel,  Reader reader, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNClob(int columnIndex,  Reader reader) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateClob(int columnIndex,  Reader reader) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateClob(String columnLabel,  Reader reader) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateClob(int columnIndex,  Reader reader, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateClob(String columnLabel,  Reader reader, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBinaryStream(String columnLabel, java.io.InputStream x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateAsciiStream(String columnLabel, java.io.InputStream x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateCharacterStream(int columnIndex,
+                             java.io.Reader x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBinaryStream(int columnIndex,
+                            java.io.InputStream x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+
+	@Override
+	public void updateAsciiStream(int columnIndex,
+                           java.io.InputStream x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNCharacterStream(String columnLabel,
+                             java.io.Reader reader) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNCharacterStream(int columnIndex,
+                             java.io.Reader x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+
+	@Override
+	public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBinaryStream(String columnLabel, java.io.InputStream x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateAsciiStream(String columnLabel, java.io.InputStream x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateCharacterStream(int columnIndex,
+                             java.io.Reader x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateBinaryStream(int columnIndex,
+                            java.io.InputStream x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+
+	@Override
+	public void updateAsciiStream(int columnIndex,
+                           java.io.InputStream x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNCharacterStream(String columnLabel,
+                             java.io.Reader reader, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNCharacterStream(int columnIndex,
+                             java.io.Reader x, long length) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public java.io.Reader getNCharacterStream(int columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public java.io.Reader getNCharacterStream(String columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public String getNString(int columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public String getNString(String columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML getSQLXML(int columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public SQLXML getSQLXML(String columnLabel) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public NClob getNClob(int columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public NClob getNClob(String columnLabel) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNClob(String columnLabel,  NClob nClob) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNString(String columnLabel, String nString) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateNString(int columnLabel, String nString) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public int getHoldability() throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateRowId(int columnIndex, RowId x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public void updateRowId(String columnLabel, RowId x) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public RowId getRowId(int columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public RowId getRowId(String columnIndex) throws SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+                throw new SQLFeatureNotSupportedException("Not supported");
+        }
         };
     }
 
@@ -6911,6 +7182,7 @@ public class StatementRegressionTest ext
                     expectedUpdCountBatchPStmt = expectedUpdCountBatchPStmtRW;
                     expectedGenKeysBatchPStmt = versionMeetsMinimum(5, 5) ? expectedGenKeysForBatchPStmtRW : expectedGenKeysForBatchPStmtRW51;
                     break;
+
                 case 4:
                     // dontCheckOnDuplicateKeyUpdateInSQL=true is canceled by rewriteBatchedStatements=true
                     testConn = getConnectionWithProps("rewriteBatchedStatements=true,dontCheckOnDuplicateKeyUpdateInSQL=true");
Index: mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
+++ mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
@@ -23,13 +23,20 @@
 
 package com.mysql.fabric.jdbc;
 
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.NClob;
+import java.sql.SQLXML;
 import java.sql.CallableStatement;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
+import java.sql.SQLClientInfoException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLWarning;
 import java.sql.Savepoint;
 import java.sql.Statement;
+import java.sql.Struct;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.HashMap;
@@ -844,22 +851,6 @@ public class FabricMySQLConnectionProxy
         return getActiveMySQLConnection().getMetadataSafeStatement();
     }
 
-    /**
-     * Methods doing essentially nothing
-     * 
-     * @param iface
-     */
-    public boolean isWrapperFor(Class<?> iface) {
-        return false;
-    }
-
-    /**
-     * @param iface
-     */
-    public <T> T unwrap(Class<T> iface) {
-        return null;
-    }
-
     public void unSafeStatementInterceptors() throws SQLException {
     }
 
@@ -2891,14 +2882,6 @@ public class FabricMySQLConnectionProxy
     public void clearWarnings() {
     }
 
-    public Properties getClientInfo() {
-        return null;
-    }
-
-    public String getClientInfo(String name) {
-        return null;
-    }
-
     public int getHoldability() {
         return -1;
     }
@@ -2928,4 +2911,64 @@ public class FabricMySQLConnectionProxy
 
     public void decachePreparedStatement(ServerPreparedStatement pstmt) throws SQLException {
     }
+
+    @Override
+    public Struct createStruct(String typeName, Object[] attributes) throws SQLException {
+        throw new SQLFeatureNotSupportedException("Not supported");
+    }
+
+	@Override
+	public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getClientInfo(String name) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Properties getClientInfo() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+	@Override
+	public void setClientInfo(String name, String value) throws SQLClientInfoException {
+		//throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+		//throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML createSQLXML() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob createNClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Blob createBlob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Clob createClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/MultiHostMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/MultiHostMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/MultiHostMySQLConnection.java
@@ -23,6 +23,12 @@
 
 package com.mysql.jdbc;
 
+import java.sql.Blob;
+import java.sql.NClob;
+import java.sql.SQLXML;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLClientInfoException;
+import java.sql.Struct;
 import java.sql.CallableStatement;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
@@ -2411,4 +2417,67 @@ public class MultiHostMySQLConnection im
     public void setEnabledSSLCipherSuites(String cipherSuites) {
         getActiveMySQLConnection().setEnabledSSLCipherSuites(cipherSuites);
     }
+
+	@Override
+	public Struct createStruct(String typeName, Object[] attributes) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public String getClientInfo(String name) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Properties getClientInfo() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public void setClientInfo(String name, String value)     throws SQLClientInfoException {
+	}
+
+	@Override
+	public void setClientInfo(Properties properties) throws SQLClientInfoException {
+	}
+
+	@Override
+	public boolean isValid(int timeout) throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public SQLXML createSQLXML() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public NClob createNClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Blob createBlob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public Clob createClob() throws SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public boolean isWrapperFor(java.lang.Class<?> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
+	@Override
+	public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
 }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
@@ -102,21 +102,24 @@ public class JDBC4MultiHostMySQLConnecti
     /**
      * @see java.sql.Connection#createBlob()
      */
-    public Blob createBlob() {
+    @Override
+    public Blob createBlob() throws SQLException {
         return this.getJDBC4Connection().createBlob();
     }
 
     /**
      * @see java.sql.Connection#createClob()
      */
-    public Clob createClob() {
+    @Override
+    public com.mysql.jdbc.Clob createClob() throws SQLException {
         return this.getJDBC4Connection().createClob();
     }
 
     /**
      * @see java.sql.Connection#createNClob()
      */
-    public NClob createNClob() {
+    @Override
+    public NClob createNClob() throws SQLException {
         return this.getJDBC4Connection().createNClob();
     }
 
Index: mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
@@ -28,6 +28,7 @@ import java.sql.Connection;
 import java.sql.Driver;
 import java.sql.DriverManager;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.util.Properties;
 import java.util.logging.Logger;
 
@@ -103,7 +104,9 @@ public class FabricMySQLDriver extends N
         return super.parseURL(url.replaceAll("fabric:", ""), defaults);
     }
 
-    public Logger getParentLogger() throws SQLException {
-        throw new SQLException("no logging");
-    }
+	@Override
+	public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+		throw new SQLFeatureNotSupportedException("Not supported");
+	}
+
 }
openSUSE Build Service is sponsored by