2011-06-22 47 views
0

喜友JSF primefaces圖表不顯示我用我的應用程序Primefaces圖表錯誤

1)primefaces-3.0.M1.jar 
2)jstl-1.0.2.jar 
3)jsf-impl.jar 
4)jsf-api.jar 

以下.jar文件,但我得到的例外下面

org.apache.jasper.JasperException: /pieChartLive.jsp(16,34) #{..} is not allowed in template text 
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) 
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) 
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) 
    org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:711) 
    org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:935) 
    org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336) 
    org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386) 
    org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392) 
    org.apache.jasper.compiler.Node$Root.accept(Node.java:489) 
    org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336) 
    org.apache.jasper.compiler.Validator.validate(Validator.java:1737) 
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) 
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) 
    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:803) 

我的JSP文件(pieChartLive。 JSP)

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>PieChartLive</title> 
<p:resources /> 
</head> 
<body> 
<h:form id="livePieChartForm"> 
    <p:pieChart id="votes" value="#{PieChartLiveBean.lunchSalesList}" 
     var="lunchSalesBean" live="true" refreshInterval="3000" 
     categoryField="#{lunchSalesBean.dishName}" 
     dataField="#{lunchSalesBean.salesPercentage}" /> 
</h:form> 
</body> 

的web.xml

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd」 ID = 「WebApp_ID」版本= 「2.5」> PrimeFaces pieChartLive.jsp

<servlet> 
    <servlet-name>Faces Servlet</servlet-name> 
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.jsf</url-pattern> 
</servlet-mapping> 

<context-param> 
    <param-name>primefaces.THEME</param-name> 
    <param-value>cupertino</param-value> 
</context-param> 

faces-config.xml中

<faces-config> 
<managed-bean> 
    <managed-bean-name>PieChartLiveBean</managed-bean-name> 
    <managed-bean-class>com.sample.primefaces.PieChartLiveBean</managed-bean-class> 
    <managed-bean-scope>session</managed-bean-scope> 
</managed-bean> 

回答

2

你混合JSP和Facelets。 Facelet的文件後綴爲.jsp,但Faces Servlet的web.xml映射爲* .jsf。所以Faces Servlet將不會被調用。

將文件後綴更改爲.jsf並重試。

+0

我想同樣,但它仍然不工作,請參閱此日誌http://www.mediafire.com/?5t4n544ptm6k6a4 – Ranjith

+1

我認爲你嘗試從jsp遷移到facelets 2.0。閱讀[這個答案類似的問題](http://stackoverflow.com/questions/4441713/migrating-from-jsf-1-2-to-jsf-2-0/4532870#4532870)的一些提示。 –