In un controller che hanno due valori:Come assegnare un setter in Salesforce che richiede un parametro indice, come un elenco <>?
public List<String> StringValue {get; set;}
public List<String> ListValue {get; set;}
Il ListValue viene inizializzato nel costruttore e si aggiungono diverse stringhe. A questo punto in un valore posso riferirmi a questi con {! StringValue} e {! ListValue [1]} in una pagina VisualForce. L'elenco in particolare è l'obiettivo: posso persino aggiungere pseudo-costanti (getter) come indici, rendendo {! ListValue [nomeIndice]} un riferimento valido.
Tuttavia, ho riscontrato un'eccezione durante il tentativo di impostare anziché un valore di stringa semplice.
<apex:param value="123" assignTo="{!ListValue[1]}" />
L'eccezione è java.lang.ClassCastException: java.lang.String cannot be cast to common.formula.FormulaFieldReference
Credo di capire le basi del problema - Salesforce non è possibile creare un riferimento setter che include un parametro indice (che significa solo setter che prendono un singolo parametro può essere referenziato).
C'è un modo per aggirare questo, o devo solo creare una quantità massiccia di ListValue1, variabili ListValue2 e codice associato?