AutoComplate problem

UI Components for JSF
Post Reply
muhammed_sabir
Posts: 21
Joined: 26 Feb 2009, 15:58

11 Jul 2010, 17:35

Merhaba hocam,
ulke lerin getirdiğim alan var debug aşamasında verilerin düzgün geliyor fakat
PrimeFacesPhaseListener$2.invokeContextCallback(FacesContext, UIComponent) line: 271
hatası alıyorum ? T harfine başında T ile başlıyan ülkeler listeleniyor fakat classcast hatası veriyor neden olabilir?
GenelAdres.completeUlke()T
Türkiye
Thailand
Tunus
java.lang.ClassCastException: com.yuvamgroup.model.hibernate.pojo.genel.adres.UlkeBean cannot be cast to java.lang.String
at org.primefaces.component.autocomplete.AutoCompleteRenderer.encodePartially(AutoCompleteRenderer.java:82)
at org.primefaces.component.autocomplete.AutoComplete.encodePartially(AutoComplete.java:221)
at org.primefaces.application.PrimeFacesPhaseListener$2.invokeContextCallback(PrimeFacesPhaseListener.java:265)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1253)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1262)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1262)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1262)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1262)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:1262)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:672)
at org.primefaces.application.PrimeFacesPhaseListener.handleAjaxRequest(PrimeFacesPhaseListener.java:125)
at org.primefaces.application.PrimeFacesPhaseListener.beforePhase(PrimeFacesPhaseListener.java:74)
at com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:228)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:99)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(TuscanyServletFilter.java:99)
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:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)

@ManagedBean(name="GenelAdres")
@RequestScoped
public class GenelAdres extends BaseBean{
private UlkeBean ulke;
private IlBean il;
private IlceBean ilce;
private MahalleBean mahalle;
private YolBean yol;
private SiteBean site;
private BinaBean bina;
private BinaTuruBean binaturu;
private BagimsizBolumBean bagimsizbolum;
private List<UlkeBean> lst;
private AdresIslemleri ai;
private String text;
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public UlkeBean getUlke() {
return ulke;
}
public void setUlke(UlkeBean ulke) {
this.ulke = ulke;
}
public GenelAdres(){
try{
ai=new AdresIslemleri();
} catch (MalformedURLException e) {
YuvamLogger.getLogger().error(e);
fatalError(e.getMessage());
} catch (RemoteException e) {
YuvamLogger.getLogger().error(e);
fatalError(e.getMessage());
} catch (NotBoundException e) {
YuvamLogger.getLogger().error(e);
fatalError(e.getMessage());
}
this.setBeanName("GenelAdres");

if(this.getUlke()==null){
this.setUlke(new UlkeBean());
}
getulkeList();
}
public List<UlkeBean> getulkeList(){
lst = new ArrayList<UlkeBean>();
try {
lst = ai.araUlke(this.getSessionKullanici(), this.getUlke());
} catch (YuvamConfigurationException e) {
YuvamLogger.getLogger().error(e);
fatalError(e.getMessage());
}
return lst;
}
public List<UlkeBean> completeUlke(String query) {
List<UlkeBean> suggestions = new ArrayList<UlkeBean>();
System.out.println("GenelAdres.completeUlke()"+query);
for(UlkeBean u : lst) {
System.out.println(u.getUlkeAdi());
if(u.getUlkeAdi().startsWith(query))
suggestions.add(u);
}

return suggestions;
}
<p:autoComplete value="" completeMethod="#{GenelAdres.completeUlke}"
styleClass="aramaZorunlu"
validator="#{ulke.validateRequired}"
onkeypress="return handleEnter(this, event);"/>

muhammed_sabir
Posts: 21
Joined: 26 Feb 2009, 15:58

12 Jul 2010, 00:43

Hocam dikkatsizliğim kurbanıyım:)ClassCast diye hata veriyorum da diyorum fakat hiç list nesnesinin türüne bakmıyorum

public List<String> completeUlke(String query) {
List<String> suggestions = new ArrayList<String>();
System.out.println("GenelAdres.completeUlke()"+query);
for(UlkeBean u : lst) {
System.out.println(u.getUlkeAdi());
if(u.getUlkeAdi().startsWith(query))
suggestions.add(u.getUlkeAdi());
}

return suggestions;
}
düzeltince oldu :D

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 41 guests