În Java SE 6, a fost adăugată o nouă superinterfaţă java.sql.Wrapper la următoarele interfeţe SQL:
Această regulă detectează şi semnalează clasele Java care implementează aceste interfeţe dacă clasele nu au metode Wrapper.
Orice clasă care implementează aceste interfeţe Java nu poate compila până când nu sunt adăugate metode Wrapper
la clasă.
În următorul exemplu, clasa MyClass va fi semnalată până când sunt adăugate metodele isWrapperFor şi unwrap:
public class MyClass implements javax.sql.DataSource {
public Connection getConnection() throws SQLException {
// TODO Auto-generated method stub
return null;
}
public Connection getConnection(String username, String password)
throws SQLException {
// TODO Auto-generated method stub
return null;
}
public PrintWriter getLogWriter() throws SQLException {
// TODO Auto-generated method stub
return null;
}
public void setLogWriter(PrintWriter out) throws SQLException {
// TODO Auto-generated method stub
}
public void setLoginTimeout(int seconds) throws SQLException {
// TODO Auto-generated method stub
}
public int getLoginTimeout() throws SQLException {
// TODO Auto-generated method stub
return 0;
}
}
|
Pentru a rezolva problema, compilaţi-vă aplicaţia în Eclipse folosind Java 6 sau o versiune ulterioară. Utilizați fix-ul automat pentru a adăuga metodele lipsă, apoi adăugați manual implementarea lipsă. Copiați configurația personalizată pe fișierul de build al aplicației pentru a activa automatizarea corectării.
Vedeţi documentaţia Java pentru interfaţa java.sql.Wrapper pentru mai multe informaţii.