2013-03-23 118 views
0

我使用RichFaces的3.1.6的老項目,JSF 1.1RichFaces的主題問題和DataTable樣式類問題

是否有任何RichFaces的主題存在3.1.6版本?因爲當我添加 themes-3.3.3.Final.jar我的應用程序不起作用,但是如果我從我的類路徑中移除該jar,那麼應用程序工作正常。

我已在在JSF頁面下面

<rich:dataTable width="100%" 
id="dataemp" columnClasses="colClass" 
      value="#{test.beanValues}" var="emp"> 

      <rich:column> 
       <f:facet name="header">Employee Number</f:facet> 
       <h:outputText value="#{emp.employeeNumber}" /> 
      </rich:column> 
      <rich:column> 
       <f:facet name="header">Employee Name</f:facet> 
       <h:outputText value="#{emp.employeeName}" /> 
      </rich:column> 
      <rich:column> 
       <f:facet name="header">HireDate</f:facet> 
       <h:outputText value="#{emp.hireDate}" /> 
      </rich:column> 
      <rich:column> 
       <f:facet name="header">Mileage</f:facet> 
       <h:outputText value="#{emp.deptNo}" /> 
      </rich:column> 

</rich:dataTable> 

當運行頁面時,我得到的輸出沒有表格邊框或風格和web.xml我有

<context-param> 
    <param-name>org.richfaces.SKIN</param-name> 
    <param-value>DEFAULT</param-value> 
</context-param> 

不知道如何添加具有RichFaces的樣式類,

截屏enter image description here

UPD吃了1

我已經設法解決風格類問題,但仍不能解決主題jar問題。

修改JSF

<rich:dataTable value="#{test.beanValues}" 
         var="emp" rowClasses="row1, row2" id="empdet" rows="4" 
         columnClasses="50,100,100,100" onRowMouseOver="this.style.backgroundColor='#B5F3FB'" 
         onRowMouseOut="this.style.backgroundColor='#{a4jSkin.rowBackgroundColor}'" 
         width="350"> 
         <f:facet name="header"> 
          <rich:columnGroup> 

           <rich:column colspan="4"> 
            <h:outputText value="List of Employees" /> 
           </rich:column> 

           <rich:column breakBefore="true"> 
            <h:outputText value="Employee #" /> 
           </rich:column> 

           <rich:column> 
            <h:outputText value="Employee Name" /> 
           </rich:column> 

           <rich:column> 
            <h:outputText value="Hire Date" /> 
           </rich:column> 

           <rich:column> 
            <h:outputText value="Dept #" /> 
           </rich:column> 

          </rich:columnGroup> 
         </f:facet> 

         <rich:column> 
          <f:facet name="header"> 
           <h:outputText value=" " 
            title="Hack due to bug. Shuold be remoevd till release"></h:outputText> 
          </f:facet> 
          <h:outputText value="#{emp.employeeNumber}" /> 

         </rich:column> 

         <rich:column> 
          <h:outputText value="#{emp.employeeName}" /> 

         </rich:column> 

         <rich:column> 
          <h:outputText value="#{emp.hireDate}" /> 
         </rich:column> 

         <rich:column> 
          <h:outputText value="#{emp.deptNo}" /> 
         </rich:column> 

        </rich:dataTable> 
        <rich:datascroller align="left" for="empdet" 
         maxPages="20" /> 

屏幕截圖。

enter image description here

回答

2

我不認爲3.3.3.Final.jar將與RichFaces的3.1.6工作。實際上,3.1.6版本是JSF 1.1兼容的最後一個RF版本。

但是,您可以使用已使用的參數org.richfaces.SKIN更改皮膚(或覆蓋它以定義您的皮膚)。可能的值在richfaces-impl-3.1.6.GA/META-INF/skins下找到。

請參考此鏈接爲肌膚使用和定製:http://docs.jboss.org/richfaces/latest_4_X/Developer_Guide/en-US/html/chap-Developer_Guide-Skinning_and_theming.html#exam-Developer_Guide-Skinning_and_theming-Using_a_base_skin

即使它說,它關係到RF4。我認爲這是適用於3.1.6

希望這是一些幫助

+0

在我的第二個屏幕截圖你覺得它apoears的方式是因爲沒有施加的皮膚嗎? – user75ponic 2013-03-24 15:46:05

+0

您是否嘗試使用經典或藍色皮膚?你確定沒有其他的CSS規則(RF除外)適用於數據表嗎?可能你有一些其他的CSS類將表格邊框設置爲空(border-width:0px)? – 2013-03-24 16:01:04