-
FEATURED COMPONENTS
First time here? Check out the FAQ!
1 | initial version | |
Hello Guys
I have been having this issue with combobox throwing unusual exception out of no where, it worked flawlessly still does, when a user chooses something out of combobox, it throws an exception. When I used to face this issue before, I just removed the ZK libraries and readded then it worked without this issue. The zul page, controller and thrown exception located below. I need your assistance in this issue. P.S. I Use zk 7.0.2 EE and tomcat ibm websphere servers
Thanks
.zul page
<?page title="Izleme Ekrani" contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<zk>
<include src="/layout/banner.zul" />
<window title="Izleme Ekrani"
apply="com.akbank.controller.TracingController" border="normal"
width="800px">
<grid id="form" height="135px">
<columns>
<column width="150px" />
<column width="600px" />
</columns>
<rows>
<row>
<label value="Sicile Gore" />
<textbox id="sicil"/>
</row>
<row>
<label value="Yetki Grubuna Gore"></label>
<combobox id="authGroup" model="${$composer.userAuthList()}" autocomplete="true" width="580px" autodrop="true" instant="true">
<comboitem label="${each}" value="${each}" />
</combobox>
</row>
<row>
<label value="Universe Gore" />
<combobox id="universeGrubu" model="${$composer.userUniverseList()}" autocomplete="true" width="580px" autodrop="true" instant="true">
<comboitem label="${each}" value="${each}"></comboitem>
</combobox>
</row>
</rows>
</grid>
</window>
</zk>
controller
@VariableResolver(org.zkoss.zkplus.spring.DelegatingVariableResolver.class)
public class TracingController extends SelectorComposer<Component> {
@WireVariable
private BusinessObjectsService businessObjectsService;
@WireVariable
private DatabaseService databaseService;
@Wire
Textbox sicil;
@Wire
Combobox authGroup;
@Wire
Combobox universeGrubu;
/*
* This listener stands for acquiring textbox value and listening key event
*/
@Listen("onOK = #sicil")
public void sicilProcess(KeyEvent keyEvent) {
List personnelList;
/*
* get the user search value check user existence
*/
if (businessObjectsService.checkUserExistence(sicil.getValue())) {
/*
* the user has been registered Clear the sicil value
*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("sicil", sicil.getValue());
Executions.sendRedirect("traceUser.zul");
} else {
/*
* create the user fetch the user data
*/
personnelList = databaseService.getUserData(sicil
.getValue());
// check the user is available on database
if (personnelList.size() == 0 || personnelList == null) {
/*
* print the error message that the user is not found on HR
* database display message box and display the error message
*/
Clients.showNotification(sicil.getValue()
+ " sicili veri tabaninda kayitli degil", "error",
sicil, "bottom_center", 3000);
sicil.setValue("");
} else {
Clients.showNotification(sicil.getValue()
+ " sicili kayitli degil", "warning", sicil,
"bottom_center", 3000);
}
}
}
/*
* This listener stands for acquiring combobox value and listening key event
*/
@Listen("onOK = #authGroup")
public void authGroupProcess() {
if (businessObjectsService.checkGroupExistence(authGroup.getValue())) {
/*
* the group exists
*/
/*Clients.showNotification("yonlendiriliyorsunuz...", "info", authGroup,
"bottom_center", 11000);*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("authGroup", authGroup.getValue());
Executions.sendRedirect("traceAuthGroup.zul");
} else {
Clients.showNotification(authGroup.getValue() + " yetki grubu mevcut degil",
"warning", authGroup, "bottom_center", 3000);
}
}
@Listen("onOK = #universeGrubu")
public void universeProcess() {
if (businessObjectsService.checkGroupExistence(universeGrubu.getValue())) {
/*
* the group exists
*/
/*Clients.showNotification("yonlendiriliyorsunuz...", "info", authGroup,
"bottom_center", 11000);*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("universe", universeGrubu.getValue());
Executions.sendRedirect("traceUniverse.zul");
} else {
Clients.showNotification(universeGrubu.getValue() + " universe mevcut degil",
"warning", universeGrubu, "bottom_center", 3000);
}
}
/*
* This function collects the auth groups under GRP_PAX_STANDARD_USER
* Universe on Business Objects Server and returns a SimpleListModel to be
* obtained by a Listbox in View
*/
public ListModelList<String> userAuthList() {
ArrayList<String> userAuthListString = new ArrayList<String>();
userAuthListString = businessObjectsService
.collectAuthorizationGroups();
ListModelList<String> authList = new ListModelList<String>(
userAuthListString);
return authList;
}
/*
* This function collects exist Universes under GRP_UNI_ALL Universe on
* Business Objects Server and returns a ListModelList to be obtained by a
* Listbox in View
*/
public ListModelList<String> userUniverseList() {
ArrayList<String> userUniverseListString = new ArrayList<String>();
userUniverseListString = businessObjectsService.collectUniverses();
ListModelList<String> universeList = new ListModelList<String>(
userUniverseListString);
return universeList;
}
}
Thrown Exception 10:19:36.770 [http-8080-2] ERROR org.zkoss.zk.ui.impl.UiEngineImpl - java.lang.AbstractMethodError: org.zkoss.zul.Combobox$4.getUnselectedItems()Ljava/util/Set; at org.zkoss.zk.ui.event.SelectEvent.getSelectEvent(SelectEvent.java:80) at org.zkoss.zul.Combobox.service(Combobox.java:765) at org.zkoss.zk.ui.impl.DesktopImpl.service(DesktopImpl.java:710) at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1249) at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:603) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:485) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:494) at javax.servlet.http.HttpServlet.service(HttpServlet.java:643) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662)
2 | No.2 Revision |
Hello Guys
I have been having this issue with combobox throwing unusual exception out of no where, it worked flawlessly still does, when a user chooses something out of combobox, it throws an exception. When I used to face this issue before, I just removed the ZK libraries and readded then it worked without this issue. The zul page, controller and thrown exception located below. I need your assistance in this issue. P.S. I Use zk 7.0.2 EE and tomcat ibm websphere servers
Thanks
Screenshot imagesup.net/?di=214132710474
.zul page
<?page title="Izleme Ekrani" contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<zk>
<include src="/layout/banner.zul" />
<window title="Izleme Ekrani"
apply="com.akbank.controller.TracingController" border="normal"
width="800px">
<grid id="form" height="135px">
<columns>
<column width="150px" />
<column width="600px" />
</columns>
<rows>
<row>
<label value="Sicile Gore" />
<textbox id="sicil"/>
</row>
<row>
<label value="Yetki Grubuna Gore"></label>
<combobox id="authGroup" model="${$composer.userAuthList()}" autocomplete="true" width="580px" autodrop="true" instant="true">
<comboitem label="${each}" value="${each}" />
</combobox>
</row>
<row>
<label value="Universe Gore" />
<combobox id="universeGrubu" model="${$composer.userUniverseList()}" autocomplete="true" width="580px" autodrop="true" instant="true">
<comboitem label="${each}" value="${each}"></comboitem>
</combobox>
</row>
</rows>
</grid>
</window>
</zk>
controller
@VariableResolver(org.zkoss.zkplus.spring.DelegatingVariableResolver.class)
public class TracingController extends SelectorComposer<Component> {
@WireVariable
private BusinessObjectsService businessObjectsService;
@WireVariable
private DatabaseService databaseService;
@Wire
Textbox sicil;
@Wire
Combobox authGroup;
@Wire
Combobox universeGrubu;
/*
* This listener stands for acquiring textbox value and listening key event
*/
@Listen("onOK = #sicil")
public void sicilProcess(KeyEvent keyEvent) {
List personnelList;
/*
* get the user search value check user existence
*/
if (businessObjectsService.checkUserExistence(sicil.getValue())) {
/*
* the user has been registered Clear the sicil value
*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("sicil", sicil.getValue());
Executions.sendRedirect("traceUser.zul");
} else {
/*
* create the user fetch the user data
*/
personnelList = databaseService.getUserData(sicil
.getValue());
// check the user is available on database
if (personnelList.size() == 0 || personnelList == null) {
/*
* print the error message that the user is not found on HR
* database display message box and display the error message
*/
Clients.showNotification(sicil.getValue()
+ " sicili veri tabaninda kayitli degil", "error",
sicil, "bottom_center", 3000);
sicil.setValue("");
} else {
Clients.showNotification(sicil.getValue()
+ " sicili kayitli degil", "warning", sicil,
"bottom_center", 3000);
}
}
}
/*
* This listener stands for acquiring combobox value and listening key event
*/
@Listen("onOK = #authGroup")
public void authGroupProcess() {
if (businessObjectsService.checkGroupExistence(authGroup.getValue())) {
/*
* the group exists
*/
/*Clients.showNotification("yonlendiriliyorsunuz...", "info", authGroup,
"bottom_center", 11000);*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("authGroup", authGroup.getValue());
Executions.sendRedirect("traceAuthGroup.zul");
} else {
Clients.showNotification(authGroup.getValue() + " yetki grubu mevcut degil",
"warning", authGroup, "bottom_center", 3000);
}
}
@Listen("onOK = #universeGrubu")
public void universeProcess() {
if (businessObjectsService.checkGroupExistence(universeGrubu.getValue())) {
/*
* the group exists
*/
/*Clients.showNotification("yonlendiriliyorsunuz...", "info", authGroup,
"bottom_center", 11000);*/
Clients.showBusy("");
Sessions.getCurrent().setAttribute("universe", universeGrubu.getValue());
Executions.sendRedirect("traceUniverse.zul");
} else {
Clients.showNotification(universeGrubu.getValue() + " universe mevcut degil",
"warning", universeGrubu, "bottom_center", 3000);
}
}
/*
* This function collects the auth groups under GRP_PAX_STANDARD_USER
* Universe on Business Objects Server and returns a SimpleListModel to be
* obtained by a Listbox in View
*/
public ListModelList<String> userAuthList() {
ArrayList<String> userAuthListString = new ArrayList<String>();
userAuthListString = businessObjectsService
.collectAuthorizationGroups();
ListModelList<String> authList = new ListModelList<String>(
userAuthListString);
return authList;
}
/*
* This function collects exist Universes under GRP_UNI_ALL Universe on
* Business Objects Server and returns a ListModelList to be obtained by a
* Listbox in View
*/
public ListModelList<String> userUniverseList() {
ArrayList<String> userUniverseListString = new ArrayList<String>();
userUniverseListString = businessObjectsService.collectUniverses();
ListModelList<String> universeList = new ListModelList<String>(
userUniverseListString);
return universeList;
}
}
Thrown Exception 10:19:36.770 [http-8080-2] ERROR org.zkoss.zk.ui.impl.UiEngineImpl - java.lang.AbstractMethodError: org.zkoss.zul.Combobox$4.getUnselectedItems()Ljava/util/Set; at org.zkoss.zk.ui.event.SelectEvent.getSelectEvent(SelectEvent.java:80) at org.zkoss.zul.Combobox.service(Combobox.java:765) at org.zkoss.zk.ui.impl.DesktopImpl.service(DesktopImpl.java:710) at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1249) at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:603) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:485) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:494) at javax.servlet.http.HttpServlet.service(HttpServlet.java:643) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662)