ПРОБЛЕМА РЕШЕНА !! Произошла ошибка проверки на моем компоненте поддержки, говорящая мне что-то вроде этого: Значение параметра Ошибка преобразования «Африка (AFR)» для «нулевого преобразователя».
Из-за жизненного цикла JSF метод прослушивания на моем бэкане не назывался
У меня проблема с JSF2.У меня есть тег selectOneMenu с тегом ajax, который должен запускать слушателя при изменении его значения.Страница xhtml выглядит следующим образом (некоторые элементы удалены)
<h:selectOneMenu id="selectedContinent" value="#{searchExtendedAction.destination.continent}">
<f:selectItems value="#{searchExtendedAction.continents}" />
<f:ajax render="locationSelector" listener="#{searchExtendedAction.doUpdateLocations}" />
</h:selectOneMenu>
В моем компоненте поддержки есть следующее (некоторые свойства не указаны):
@ManagedBean
@SessionScoped
public class SearchExtendedAction implements Serializable{
// Left some properties out
@Valid
private Location departure;
@PostConstruct
public void init(){
System.err.println("INIT called");
allContinents = continentService.getAllContinents();
}
@EJB
private ContinentService continentService;
public void doExtendedSearch()
{
System.err.println("SEARCH");
}
public void doUpdateLocations(AjaxBehaviorEvent event)
{
System.err.println("BONZAI");
}
public List<SelectItem> getContinents()
{
List<SelectItem> continents= new ArrayList<SelectItem>();
continents.add(new SelectItem("--- Select Continent ---"));
for(Continent c : continentService.getAllContinents()){
continents.add(new SelectItem(c.getName()));
}
return continents;
}
}
Теперь, когда я выбираюзначение из моего selectOneMenu HTTP-сообщение запускается.И я знаю это, потому что мой метод PostConstruct вызывается, и сообщение выскакивает в моей консоли.Но слушатель не называется.И я понятия не имею, почему.
Еще немного информации о технологиях, которые я использую:
16:21:08,282 INFO [AbstractServer] Starting: JBossAS [6.1.0.Final "Neo"]
16:21:11,725 INFO [ServerInfo] Java version: 1.7.0,Oracle Corporation
16:21:11,725 INFO [ServerInfo] Java Runtime: Java(TM) SE Runtime Environment (build 1.7.0-b147)
16:21:11,725 INFO [ServerInfo] Java VM: Java HotSpot(TM) 64-Bit Server VM 21.0-b17,Oracle Corporation
16:21:11,726 INFO [ServerInfo] OS-System: Windows 7 6.1,amd64
16:21:19,067 INFO [AbstractServerConfig] JBoss Web Services - Stack CXF Server 3.4.1.GA
16:21:19,981 INFO [JSFImplManagementDeployer] Initialized 3 JSF configurations: [Mojarra-1.2, MyFaces-2.0, Mojarra-2.0]