Unikaj używania niepoprawnego kontekstu początkowego java:/comp

Ta reguła oznacza dowolny literał łańcuchowy rozpoczynający się od java:/comp w plikach Java lub plikach XML. Ten łańcuch zwykle reprezentuje wyszukiwanie kontekstu nazewnictwa. Specyfikacja Java EE definiuje łańcuch wyszukiwania jako java:comp bez ukośnika (/) poprzedzającego comp . Jednak serwer Apache Tomcat zezwala na niezgodny łańcuch.

Gdy dostarczona zostanie automatyczna poprawka dla tej reguły, usunie ona znak / z ciągu znaków.

Jako przykładu można użyć następującego fragmentu kodu, który zawiera dodatkowy ukośnik.

private static String final SOME_LOOKUP_NAME = "java:/comp/env/someValue";
String anEnvValue = (String) initialContext.lookup("java:/comp/myEnvString");

Automatyczna poprawka usunie ukośnik i zaktualizuje kod do postaci:

private static String final SOME_LOOKUP_NAME = "java:comp/env/someValue";
String anEnvValue = (String) initialContext.lookup("java:comp/myEnvString");

Reguła XML oznacza flagą tylko pierwszą instancję łańcucha w pliku, jeśli istnieje ich wiele. Automatyczna poprawka XML zmieni wszystkie wystąpienia problematycznego ciągu w pliku.

Jako przykład można rozważyć poniższy fragment kodu XML.

<PROPERTY key="LookupName" value="java:/comp/env/someValue"/>

Automatyczna poprawka usunie ukośnik i zaktualizuje kod do postaci:

<PROPERTY key="LookupName" value="java:comp/env/someValue"/>