Questo argomento riguarda questioni correlate alla gestione delle stringhe che è necessario considerare quando si sviluppano estensioni definite dall'utente per WebSphere Message Broker nel linguaggio di programmazione C.
Se si stanno sviluppando estensioni definite dall'utente utilizzando il linguaggio di programmazione Java, è possibile utilizzare metodi di gestione delle stringhe Java standard.
Per abilitare un broker WebSphere Message Broker alla gestione dei messaggi in tutti i linguaggi contemporaneamente, l'elaborazione del testo all'interno del broker viene effettuata in UCS-2 Unicode. Le stringhe di caratteri UCS-2 Unicode vengono utilizzate anche nelle API dell'estensione definita dall'utente in linguaggio Java e C per passare e restituire dati carattere. Gli attributi vengono ricevuti nei messaggi di configurazione XML come stringhe di caratteri, indipendentemente dal tipo di dati. Se il vero tipo di dati di un attributo non è una stringa, la funzione cniSetAttribute deve eseguire la conversione e la verifica necessaria prima di memorizzare il valore di attributo. In modo simile, quando un valore di attributo viene richiamato utilizzando cniGetAttribute2, la conversione deve essere eseguita su una stringa di caratteri UCS-2 Unicode prima di restituire il risultato.
CciChar definisce un carattere a 16 bit con rappresentazione UCS-2 Unicode. CciChar* è una stringa di tali caratteri che terminano con un CciChar di 0. Per impostazione predefinita, un CciChar è rappresentato dal tipo wchar_t. Tuttavia, alcune piattaforme non hanno un modo conveniente di rappresentare costanti UCS-2 in codice di origine, solitamente a causa di una rappresentazione EBCDIC o wchar_t di 4 byte. Ad esempio, una costante codice di origine come L"ABC" si espande a 12 byte su Solaris.
Per tale ragione, WebSphere Message Broker fornisce le funzioni di utilità cciMbsToUcs e cciUcsToMbs. Utilizzare tali funzioni, dove appropriato, per assicurare la portabilità dei nodi definiti dall'utente.