2013-04-30 137 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方向,所以我不得不重写条形图风格,并赋予它的方向升。