2010-07-12 10 views
1

je suis nouveau à premierface.problème avec la bibliothèque primefaces (jsf)

j'ai essayé de tester un exemple de primefaces sur étiquette comme dans sa documentation,

ceci est mon code page JSF:

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> 
<%@taglib uri="http://primefaces.prime.com.tr/ui" prefix="p"%> 
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%> 
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%> 
<% 
String path = request.getContextPath(); 
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
%> 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 

<head> 

    <base href="<%=basePath%>"> 

    <title>My JSP 'index.jsp' starting page</title> 
</head> 

<body> 
    <f:view> 
    <h:form> 
    <h:outputText id="txt_count" value="#{counterBean.count}" /> 
    <p:poll actionListener="#{counterBean.increment}" update="txt_count" /> 
    </h:form> 
    </f:view> 
</body> 


</html> 

et ceci est mon code backbean: [code]

import javax.faces.event.ActionEvent; 


public class CounterBean { 
private int count; 
public void increment(ActionEvent actionEvent) { 
count++; 
} 
//getters and setters 
public int getCount() { 
return count; 
} 
public void setCount(int count) { 
this.count = count; 
} 
} 

mais quand j'ai essayé de l'exécuter. J'ai cette erreur:

java.lang.IllegalStateException: Component [email protected] not expected type. Expected: javax.faces.component.UIForm. Perhaps you're missing a tag? 
com.sun.faces.taglib.html_basic.FormTag.setProperties(FormTag.java:199) 
javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:586) 
javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1070) 
com.sun.faces.taglib.html_basic.FormTag.doStartTag(FormTag.java:273) 
org.apache.jsp.index_jsp._jspx_meth_h_005fform_005f0(index_jsp.java:120) 
org.apache.jsp.index_jsp._jspService(index_jsp.java:93) 
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) 
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:428) 
com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:444) 
com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:116) 
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106) 
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251) 
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144) 
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245) 

quel est le problème? Comment puis-je le résoudre? J'utilise tomcat 6 merci à l'avance

Répondre

1
java.lang.IllegalStateException: 
    Component [email protected] not expected type. 
    Expected: javax.faces.component.UIForm. Perhaps you're missing a tag? 

L'exception suggère que vous avez une h:form quelque part dans la page qui est pas été placé à l'intérieur d'un f:view.

Depuis votre exemple de code semble bien (en dehors de l'scriptlets), vous n'êtes probablement pas exécuter le code que vous pensez que vous exécutez. Refaire la construction et le déploiement et vérifier si vous avez tout fait correctement.

+0

merci pour votre réponse, il a été corrigé. mais j'ai un autre problème quand mes pages sont chargées il dit que "yahoo n'est pas défini" et cela ne fonctionne pas. j'ai défini le servlet de ressources et mais cela ne fonctionne pas encore! – arash

+0

Voilà une nouvelle question. Vous devez poster une nouvelle question. N'oubliez pas de marquer cette réponse acceptée. Voir aussi http://stackoverflow.com/faq (et n'oubliez pas d'accepter certaines des réponses précédentes aussi souvent que possible: http://stackoverflow.com/users/332289/arash) – BalusC

1

Ils changed the uri dans la version 3. Utilisation : http://primefaces.org/ui