2013-04-30 159 views
0

我使用的條形圖例如像在顯示的情況下: http://www.primefaces.org/showcase/ui/barChart.jsf條形圖x軸,y軸的值不與RTL方向渲染

但我正在一個問題,即該圖表繪製正確地不同之處在於在x軸和y軸的值沒有出現,如下面的圖像中示出:

enter image description here

我的唯一的區別是,我在動態對話框,其中顯示該圖表。

我嘗試添加昂秀的方法來對話,但我得到了同樣的效果:

onShow="barChartWidget.plot.replot();" 

我的XHTML代碼如下:

1 report_panel.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:ui="http://java.sun.com/jsf/facelets" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:pretty="http://ocpsoft.com/prettyfaces" 
    xmlns:p="http://primefaces.org/ui" 
    xmlns:sec="http://www.springframework.org/security/tags" 
    xmlns:fn="http://java.sun.com/jsp/jstl/functions" 
    xmlns:c="http://java.sun.com/jsp/jstl/core"> 


<body> 

    <ui:composition> 


     <h:panelGroup layout="block" 
       <p:commandLink id="show_created_report" title="Show Report Dialog" 
        action="#{myBean.generateReport}" 
        oncomplete="report_dialog_widget.show();"> 
        <h:graphicImage value="/resources/images/report.png" width="50" 
         height="50" /> 
      </p:commandLink> 
     </h:panelGroup> 

     <ui:insert name="report_dialog"> 
      <ui:include src="/pages/compositions/report_dialog.xhtml" /> 
     </ui:insert> 


    </ui:composition> 

</body> 

</html> 

2- report_dialog.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:ui="http://java.sun.com/jsf/facelets" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:pretty="http://ocpsoft.com/prettyfaces" 
    xmlns:p="http://primefaces.org/ui" 
    xmlns:sec="http://www.springframework.org/security/tags" 
    xmlns:fn="http://java.sun.com/jsp/jstl/functions" 
    xmlns:c="http://java.sun.com/jsp/jstl/core"> 


<body> 

    <ui:composition> 

    <p:dialog id="report_dialog" showEffect="puff" height="500" 
     width="800" resizable="false" dir="rtl" 
     header="report" widgetVar="report_dialog_widget" 
     dynamic="true"> 
     <h:panelGroup id="report_details" layout="block"> 
     <p:dataTable styleClass="content_font" id="report_table" 
      var="record" value="#{myBean.report.tableRecords}"> 

      <p:column headerText="Dept Name"> 
       <h:outputText value="#{record.responsibleName}" /> 
      </p:column> 

      <p:column headerText="Num Of Tasks" style="text-align:center"> 
       <h:outputText value="#{record.tasksCount}" /> 
      </p:column> 

      <p:column headerText="Num Of Finished Tasks" style="text-align:center"> 
       <h:outputText value="#{record.finishedtasksCount}" /> 
      </p:column> 

      <p:column headerText="Num Of Un Finished Tasks" style="text-align:center"> 
       <h:outputText value="#{record.unFinishedtasksCount}" /> 
      </p:column> 
     </p:dataTable> 


     <p:barChart widgetVar="barChartWidget" id="barChart" value="#{myBean.report.categoryModel}" legendPosition="ne" style="width:400px;height:300px;" 
      title="Tasks Chart" min="0" max="200" /> 

     </h:panelGroup> 
     </p:dialog> 


    </ui:composition> 

</body> 

</html> 

3- managedBean:

public void generateReport(){ 
     report=new Report(); 
      //other report stuff goes here 
     report.setCategoryModel(createCategoryModel()); 
    } 

    private CartesianChartModel createCategoryModel() { 
     categoryModel = new CartesianChartModel(); 

     ChartSeries boys = new ChartSeries(); 
     boys.setLabel("Boys"); 

     boys.set("2004", 120); 
     boys.set("2005", 100); 
     boys.set("2006", 44); 
     boys.set("2007", 150); 
     boys.set("2008", 25); 

     ChartSeries girls = new ChartSeries(); 
     girls.setLabel("Girls"); 

     girls.set("2004", 52); 
     girls.set("2005", 60); 
     girls.set("2006", 110); 
     girls.set("2007", 135); 
     girls.set("2008", 120); 

     categoryModel.addSeries(boys); 
     categoryModel.addSeries(girls); 
     return categoryModel; 
    } 

我使用PrimeFaces 3.5鑽嘴魚科2.1.20

UPDATE: SAMPE用例的項目在這個環節上載: https://docs.google.com/file/d/0B10CrX5WSm-IakNWWHEteFlfalk/edit - 它可以通過文件下載>下載 - 然後提取文件並使用maven構建項目。

UPDATE2:

我發現這個問題,它涉及到,我有RTL方向在身體標記和對話組件上,用於固定任何想法?

+0

郵政相關的代碼,以便我們可以找出發生了什麼。 – skuntsel 2013-04-30 06:51:03

+0

@skuntsel代碼添加。 – 2013-04-30 07:02:37

+0

請添加您的託管bean代碼。 – erencan 2013-04-30 07:33:00

回答

0

的問題是,條形圖部件從身體繼承RTL方向,所以我不得不重寫條形圖風格,並賦予它的方向升。