Как назначить сеттеру в Salesforce, которому требуется параметр индекса, например List <>?

В контроллере у меня есть два значения:

public List<String> StringValue {get; set;} 
public List<String> ListValue {get; set;} 

ListValue инициализируется в конструкторе и добавляется несколько строк. На этом этапе значения я могу ссылаться на них с помощью {! StringValue} и {! ListValue [1]} на странице VisualForce. В первую очередь в центре внимания находится список один - я могу даже добавлять псевдоконстанты (геттеры) в качестве индексов, делая {! ListValue [nameIndex]} действительной ссылкой.

Однако я столкнулся с исключительной ситуацией при попытке установить значение списка вместо простого строкового значения.

<apex:param value="123" assignTo="{!ListValue[1]}" /> 

Исключение составляет java.lang.ClassCastException: java.lang.String нельзя преобразовать в common.formula.FormulaFieldReference

Я думаю, что понимаю основы проблемы - Salesforce не может создать ссылку на установщик который включает параметр индекса (это означает, что можно ссылаться только на сеттеры, которые принимают один параметр).

Есть ли способ обойти это, или мне просто нужно создать огромное количество переменных ListValue1, ListValue2 и связанного кода?

5
задан David 2 November 2011 в 18:55
поделиться