Я пишу очень простой интерфейс для базы данных Oracle. Он основан на JSF 1.2, jsp, развернут на Glassfish-ee-2.1 и разработан с помощью NetBeans 6.5.1.
Да, я знаю, что это 2012 год.
Нужно прочитать содержимое, возможно, обновить его и сохранить обратно в БД.
Он отлично работает для текстовых элементов. Я добавил атрибуты привязки к своим элементам пользовательского интерфейса, и я могу получить к ним доступ из bean-компонента, чтобы получить значение различных текстовых полей и т. д.
Я использую (это требование?!) компонент msDropdown (официальная страница), на основе jquery, который позволяет иметь красивое выпадающее меню с изображением и текстом.
Однако, поскольку этот элемент не является стандартным, я не нашел способа использовать атрибут привязки для доступа к нему из вспомогательного компонента.
Это означает, что я не могу установить текст при загрузке страницы, как я могу для текстовых элементов, и, кроме того, я не могу получить значение выбранного компонента при обработке отправки в компоненте поддержки.
msDropDown определяется в JSP следующим образом:
<webuijsf:markup>
<select id="status" name="status" style="left: 150px; top: 62px; width:100px">
<option data-description="" data-image="base_3.gif" value=""></option>
<option data-description="" data-image="base_0.gif" value="0"></option>
<option data-description="" data-image="base_1.gif" value="1"></option>
<option data-description="" data-image="base_2.gif" value="2"></option>
</select>
</webuijsf:markup>
Я создаю переменную js, которая содержит раскрывающийся список, чтобы позже получить доступ к его значению.
<webuijsf:script>
var oHandler1 = $("#status").msDropdown().data("dd");
var index = oHandler1.selectedIndex;
</webuijsf:script>
Затем я пытаюсь передать эту переменную своему вспомогательному компоненту следующим образом:
<webuijsf:button actionListenerExpression="#{editApplication.submitUpdate}" actionExpression="#{editApplication.update_action}" id="update"
style="height: 24px; left: 623px; top: 408px; position: absolute; width: 72px" text="Update">
<f:attribute name="currentIndex" value="#{currentRow.value['APPNAME']}"/>
<f:attribute name="currentStatus" value="<%=index%>"/>
</webuijsf:button>
Но я всегда получаю уже сообщенную ошибку, что ‹ не может использоваться в значении.
Любая идея, как я могу получить доступ к этому специальному раскрывающемуся списку из компонента? или передать его значение bean-компоненту в этом отношении?
Большое спасибо за вашу помощь, и дайте мне знать, если вам нужно больше кода!
Оли с 2006г./.