私たちはそれを理解しました。アプリケーション名が1文字長すぎました:49
48
の代わりに文字 以下。
これがv$session
のリストです プロパティとその長さの制限:
-
v$session.machine
:64 -
v$session.iname
:制限なし -
v$session.ename
:制限なし -
v$session.process
:24 -
v$session.program
:48 -
v$session.terminal
:30 -
v$session.osuer
:30
また、どのプロパティもこの正規表現に一致することはできません:.*[\00\(\)].*
、これは括弧がないことを意味すると思います。
エラーが発生してコードを確認したい場合は、IDEにSQLException
の例外ブレークポイントを追加するだけです。 。最終的にT4CConnection.class
というクラスになります。 。
メソッドの逆コンパイルされたコードvalidateConnectionProperties()
は次のとおりです。 :
void validateConnectionProperties() throws SQLException {
super.validateConnectionProperties();
String var1 = ".*[\\00\\(\\)].*";
SQLException var2;
if(this.thinVsessionOsuser == null || !this.thinVsessionOsuser.matches(var1) && this.thinVsessionOsuser.length() <= 30) {
if(this.thinVsessionTerminal == null || !this.thinVsessionTerminal.matches(var1) && this.thinVsessionTerminal.length() <= 30) {
if(this.thinVsessionMachine != null && (this.thinVsessionMachine.matches(var1) || this.thinVsessionMachine.length() > 64)) {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.machine\' and value is \'" + this.thinVsessionMachine + "\'");
var2.fillInStackTrace();
throw var2;
} else if(this.thinVsessionProgram == null || !this.thinVsessionProgram.matches(var1) && this.thinVsessionProgram.length() <= 48) {
if(this.thinVsessionProcess == null || !this.thinVsessionProcess.matches(var1) && this.thinVsessionProcess.length() <= 24) {
if(this.thinVsessionIname != null && this.thinVsessionIname.matches(var1)) {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.iname\' and value is \'" + this.thinVsessionIname + "\'");
var2.fillInStackTrace();
throw var2;
} else if(this.thinVsessionEname != null && this.thinVsessionEname.matches(var1)) {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.ename\' and value is \'" + this.thinVsessionEname + "\'");
var2.fillInStackTrace();
throw var2;
}
} else {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.process\' and value is \'" + this.thinVsessionProcess + "\'");
var2.fillInStackTrace();
throw var2;
}
} else {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.program\' and value is \'" + this.thinVsessionProgram + "\'");
var2.fillInStackTrace();
throw var2;
}
} else {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.terminal\' and value is \'" + this.thinVsessionTerminal + "\'");
var2.fillInStackTrace();
throw var2;
}
} else {
var2 = DatabaseError.createSqlException((OracleConnection)null, 190, "Property is \'v$session.osuser\' and value is \'" + this.thinVsessionOsuser + "\'");
var2.fillInStackTrace();
throw var2;
}
}