Această regulă semnalează utilizarea potenţială a slash-urilor duble, "//" în partea de domeniu a constructorilor javax.management.ObjectName. JSR 255 planifică să utilizeze "//" în partea de domeniu a unui javax.management.ObjectName ca separator pentru "cascading". În timp ce JSR 255 nu este parte din Java SE 6, se recomandă ca partea de domeniu a unui obiect ObjectName să nu conţină şirul "//" pentru a evita problemele de compatibilitate viitoare.
ObjectName este de forma:
domain:key1=value1,key2=value2,key3=value3,*cu un număr de variabile ale proprietăţilor cheie.
Dacă aplicaţia dumneavoastră conţine MBean-uri cu ObjectName care au un nume de domeniu cu un dublu slash, va trebui să schimbaţi numele de domeniu pentru acele MBean-uri.
Această regulă inspectează constructorii ObjectName şi, dacă este posibil, verifică partea cu domeniul din şir pentru a verifica dacă nu există slash-uri duble. Va fi capabilă să scaneze constructorii care transmit literali Şir sau o variabilă Şir finală care este definită în aceeaşi unitate de compilare. Dacă poate inspecta numele de domeniu, se vor semnala numai acei constructori care încalcă regula.
Regula va semnala, de asemenea, instanţele constructorului ObjectName care are numele de domeniu codat ca variabilă care nu este disponibilă rapid pentru inspecţie. Inspectaţi manual aceste instanţe pentru a verifica că numele de domenii nu conţin slash-uri duble.
Exemplul 1:
În Exemplul 1, regula va semnala myObj1 şi myObj3 deoarece aceste şiruri conţin "//". myObj2 nu va fi semnalat.
Exemplul 2:
În Exemplul 2, regula va semnala myObj2, dar nu myObj1.
Exemplul 3:
În Exemplul 3, myObj va fi semnalat deoarece codul nu poate determina numele de domeniu.
Pentru informații suplimentare, vedeți: