2016-08-03 1 views
0

はXSLに次の:FOP GWTのように宣言された変数を受け入れていない理由を私はfugureすることはできません書き込みモード(なしコンテキスト情報)

<xsl:variable name="writeMode"> 
     <xsl:choose> 
      <xsl:when test="$lang ='fa'"> 
       <xsl:value-of select="'rl-tb'"/> 
      </xsl:when> 
      <xsl:otherwise> 
       <xsl:value-of select="'lr-tb'"/> 
      </xsl:otherwise> 
     </xsl:choose> 
    </xsl:variable> 

<xsl:output method="xml" indent="yes"/> 
    <xsl:template match="/"> 
     <fo:root> 
      <fo:layout-master-set> 
       <fo:simple-page-master master-name="A4-portrait" 
             page-height="29.7cm" page-width="21.0cm" margin="2cm"> 
        <fo:region-body/> 
       </fo:simple-page-master> 
      </fo:layout-master-set> 
      <fo:page-sequence master-reference="A4-portrait"> 
       <fo:flow flow-name="xsl-region-body"> 
        <fo:block-container write-mode="{$writeMode}" font-family="{$font}" language="{$lang}"> 
         <fo:block> 
          بهترین قیمت دوچرخه کوهستان موجود است. 
         </fo:block> 
        </fo:block-container> 
       </fo:flow> 
      </fo:page-sequence> 
     </fo:root> 
    </xsl:template> 

私が取得エラー:

' "FO:ブロック・コンテナ":に遭遇した無効なプロパティの書き込みモード(なしコンテキスト情報)'

wg4.bean.ancestor.TechniqueException: Error generating PDF file : org.apache.fop.fo.ValidationException: Invalid property encountered on "fo:block-container": write-mode (No context info available) 

任意のアイデア?ありがとうございました。

答えて

0

修正済みです。書き込みモードのオプションを使用するにタイプミスがありました:次のようにそれはもちろん

writing-mode="{$writingMode}". 

でなければなりません

代わり

write-mode="{$writeMode}" 

のは、私は、変数の値assignementと改名:

<xsl:variable name="writingMode"> 
     <xsl:if test="$langue='fa'"> 
      <xsl:value-of select="'rl-tb'"/> 
     </xsl:if> 
    </xsl:variable> 

デフォルト値はlt-tbであるためです。 HTH

関連する問題