Структура CaptainCasa: Экспорт DOF не работает

#java #jsp

Вопрос:

У нас есть сетка DOF, определенная программно, где экспорт по какой-то причине не работает.

Экспорт в буфер обмена работает нормально, но CSV, XML и PDF показывают нужное количество строк/столбцов, но пустые данные внутри. Я отладил достаточно далеко, чтобы добраться до

 org.eclnt.jsfserver.util.ExpressionManagerV#getValueForExpressionString(javax.faces.context.FacesContext, java.lang.String)  

По какой-то причине он возвращает пустую строку для всех значений в неработающих сценариях и возвращает правильные значения для экспорта в буфер обмена. Строка выражения, переданная в обоих случаях, одинакова. Похоже, что диспетчер не может быть разрешен должным образом в сломанных сценариях.

Функции экспорта можно найти во всех остальных сетках DOF в нашем проекте.

Ответ №1:

Очень трудно догадаться о причине, основываясь на текущей информации. Все экспортные операции используют метод «Listlt;Listgt; exportToStringListWholeGrid()» (привязка к классу, экспортер внутреннего класса), поэтому он используется как при экспорте буфера обмена, так и при других экспортах. — Не могли бы вы, возможно, отладить внутри этого метода один раз для экспорта буфера обмена и один раз для экспорта csv, а затем проверить, видите ли вы какую-либо разницу?

Ответ №2:

Итак, моя проблема заключалась в том, что у меня было такое выражение лица:

 d.d_3.SomePageUI.dofGrid.puis['whatever'].value  

это выражение разрешит значение столбца «что угодно» в таблице. У нас была дополнительная логика в геттере dofGrid (не спрашивайте, почему…), эта дополнительная логика зависала только при использовании экспорта CSV, PDF или XML (я думаю, это потому, что открывается новое окно и контекст каким-то образом меняется ?!)

Теперь плохо то, что я не получил сообщение об ошибке «в getter dofGrid произошло исключение».

Я получил сообщение об ошибке «dofGrid равен НУЛЮ» :/