Il metodo di ricerca InitialContext può restituire tipi primitivi

Questa regola contrassegna il metodo javax.naming.InitialContext.lookup in cui il risultato viene trasmesso in un java.lang.String .

In Liberty, il metodo di ricerca javax.naming.InitialContext restituisce un oggetto il cui tipo viene determinato dall'interpretazione del valore memorizzato nell'elemento jndiEntrycome una stringa letterale o un tipo di dati primitivo. Se l'analisi non riesce, il valore esatto viene fornito come una stringa non modificata. In WebSphere traditional, i tipi di dati primitivi vengono restituiti come stringhe.

È importante comprendere questa differenza durante la migrazione della configurazione della voce JNDI da WebSphere traditional a Liberty. Ad esempio, se si configurasse un valore JNDI su 100 in WebSphere traditional, l'applicazione verrebbe scritta in modo da gestire una stringa con il valore iniziale "100". In Liberty, se si configurasse una immissione come segue:

<jndiEntry jndiName=myjndi/initialLimit value= ‘100’ />

Liberty convertirà tale valore in un intero primitivo. Per fare in modo che l'applicazione funzioni Liberty nello stesso modo in cui funziona in WebSphere, la voce JNDI deve essere codificata come:

<jndiEntry jndiName=myjndi/initialLimit value=‘100’ />

La configurazione Liberty prodotta nel file server.xml generato da Migration Toolkit for Application Binaries utilizza i valori della voce JNDI per creare valori stringa in modo che l'applicazione funzioni in Liberty nello stesso modo in cui funziona in WebSphere traditional.

Per ulteriori informazioni, consultare la documentazione Using JNDI binding for constants from the server configuration files.