2010-07-12 9 views
1

저는 primeface를 처음 사용합니다.primefaces 라이브러리 (jsf)의 문제점

나는 그 문서에서와 같이 태그에 대한 primefaces의 예를 테스트하기 위해 노력했다

,

이 내 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> 

이 내 backbean 코드 : [코드]

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; 
} 
} 

하지만 실행 해 보았습니다. 이 오류가 있습니다 :

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) 

무엇이 잘못 되었나요? 내가 어떻게 해결할 수 있니? 나는 예외는 f:view 내부에 배치되지이다 페이지에 어딘가에 h:form을했습니다 제안 사전

답변

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

6 개 감사 바람둥이을 사용하고 있습니다.

추악한 코드 (예 :)을 제외하고 코드 예제가 정상적으로 작동하므로 생각하는 코드는 실행되지 않을 가능성이 큽니다. 빌드 및 배포를 다시 실행하고 모든 작업을 올바르게 수행했는지 확인하십시오. 버전

+0

감사가 수정되었습니다. 하지만 내 페이지가로드 될 때 "야후가 정의되지 않았습니다"라는 메시지가 나타나고 작동하지 않는 문제가 있습니다. 리소스 서블릿과 을 정의했지만 아직 작동하지 않습니다! – arash

+0

그건 새로운 질문입니다. 새로운 질문을 게시해야합니다. 이 대답을 표시하는 것을 잊지 마세요. 또한 http://stackoverflow.com/faq를 참조하십시오 (해당되는 경우 이전 답변도 수락하는 것을 잊지 마십시오. http://stackoverflow.com/users/332289/arash). – BalusC

1

그들은 changed the uri 3. 사용 : 답장을 보내 http://primefaces.org/ui