2011-05-11 34 views
1

下面是我正在面臨的問題的代碼,我沒有得到圖形的輸出。 請幫助我。使用特立尼達圖表標記<tr:chart>在XHTML中,但沒有輸出即將

我的XHTML代碼

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:f="http://java.sun.com/jsf/core"  
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:tr="http://myfaces.apache.org/trinidad">  

    <h:body> 
    <h1>Director Screen</h1> 
    <tr:document> 
     <tr:form>  
       <tr:chart value="#{chartBean}" type="pie" /> 
      <tr:chart value="#{chartBean}" type="bar" /> 
      <tr:chart value="#{chartBean}" type="circularGauge"> 
     </tr:form> 
    </tr:document> 
    </h:body> 
</html> 

Java代碼的

package com; 

import java.util.ArrayList; 
import java.util.List; 
import javax.faces.bean.ManagedBean; 
import javax.faces.bean.SessionScoped; 
import org.apache.myfaces.trinidad.model.ChartModel; 



@ManagedBean(name = "chartBean") 
@SessionScoped 

public class ChartBean extends ChartModel { 

     @Override 
    public List<String> getGroupLabels() { 
     List<String> groupLabels = new ArrayList<String>(); 
     groupLabels.add("Java"); 
     groupLabels.add("Linux"); 
     groupLabels.add(".NET"); 
     return groupLabels; 
    } 

    @Override 
    public List<String> getSeriesLabels() { 
     List<String> seriesLabels = new ArrayList<String>(); 
     seriesLabels.add("Love it"); 
     seriesLabels.add("Hate it"); 
     return seriesLabels; 
    } 

    @Override 
    public List<List<Double>> getYValues() { 

     List<List<Double>> chartValues = new ArrayList<List<Double>>(); 
     // Fill the groups 
     for (int i = 0; i < getGroupLabels().size(); i++) { 
      List<Double> numbers = new ArrayList<Double>(); 

      // fill the series per group 
      for (int j = 0; j < getSeriesLabels().size(); j++) { 
       numbers.add(100* Math.random()); 
      } 
      chartValues.add(numbers); 
     } 
     return chartValues; 

    } 

} 

回答

0

我無法獲得在XHTML文件中的圖形,所以我複製在JSP中的相同,並得到了圖。

1

<h:body>之前的模板中必須有<h:head>。這就是所有JSF 2.x腳本和樣式表的結尾。如果<tr:chart>有一些JS/CSS依賴關係,我不會感到驚訝。

+0

我想在我的jsp添加元素,但我收到以下錯誤:沒有標籤「頭」定義在用前綴「h」導入的標籤庫中 – Shekhar 2011-08-29 12:43:38

+0

然後你不使用JSF 2.0,你可能需要手動導入樣式。有關詳細信息,請閱讀Trinidad文檔。 – BalusC 2011-08-29 12:44:53

0

我也有類似的問題,並通過添加以下行web.xml中解決了這個問題:

<mime-mapping> 
    <extension>svg</extension> 
    <mime-type>image/svg+xml</mime-type> 
</mime-mapping>