Utilizza valori proprietà JNDI portabili

Questa regola contrassegna qualsiasi utilizzo del costruttore javax.naming.InitialContext(Hashtable) perché riesce sempre a determinare i valori di runtime nella Hashtable. Quando si utilizza un costruttore javax.naming.InitialContext(Hashtable) assicurarsi di non utilizzare alcun valore delle proprietà JNDI proprietario. I valori delle proprietà JNDI proprietarie di JBoss includono:

Se questi valori delle proprietà JNDI non vengono utilizzati, non è necessaria alcuna azione aggiuntiva. Se questi valori delle proprietà JNDI vengono utilizzati, è possibile tre possibili soluzioni manuali.

Opzione 1: utilizzare il costruttore javax.naming.InitialContext()

Utilizzare questa opzione se non vi sono altre proprietà JNDI in fase di impostazione. Questa opzione è valida per WebSphere Application Server tradizionale o Liberty.

Opzione 2: rimuovere le proprietà della factory di denominazione e del provider di denominazione dalla Hashtable.

Utilizzare questa opzione se vi sono altre proprietà JNDI in fase di impostazione. Questa opzione è valida per WebSphere Application Server tradizionale o Liberty.

Opzione 3: Sostituire i valori della proprietà JNDI con valori validi della proprietà JNDI di WebSphere Application Server tradizionale.

Questa opzione è valida per WebSphere Application Server tradizionale:

Se i valori letterali stringa per questi valori delle proprietà JNDI si trovano nello stesso file di origine Java in cui viene utilizzato il costruttore javax.naming.InitialContext(Hashtable), utilizzare la regola e la correzione rapida Non utilizzare valori della proprietà JNDI specifici di JBoss di WebSphere Application Server tradizionale per completare questa attività.