2011-12-26 3 views
0

У меня возникла проблема с печатью PDF-файла из Java-проекта, который добавляет параметры в файл XLS. Проект читает XML-файл, затем он создает файл PDF из таблицы стилей XSL. См. Ниже содержимое файлов.
Как вы видите в файле XLS, я хочу указать «studentNumber», но проблема в том, что в «Java-проекте» необходимо указать «studentNumber». Я пробовал много вещей и искал в Интернете, но я не могу найти ответ. Любая идея, которую я хочу изменить, чтобы сделать этот проект надлежащим.Java setParameter в XSL-файле

XML файл:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<?xml-stylesheet type="text/xsl" href="studentResultXLS.xsl"?> 
<cursus> 
    <enroll> 
     <studentnumber>s484766</studentnumber> 
     <cursuscode>ISDTCEX.B627</cursuscode> 
     <enrolldate dateformat="eejjmmdd">20111121</enrolldate> 
     <acquire>ja</acquire> 
     <grade>4</grade> 
     <result></result> 
    </enroll> 
    <enroll> 
     <studentnumber>s484766</studentnumber> 
     <cursuscode>ISDTSIP.T470</cursuscode> 
     <enrolldate dateformat="eejjmmdd">20111116</enrolldate> 
     <acquire>ja</acquire><grade>2</grade> 
     <result></result> 
    </enroll> 
    <enroll> 
     <studentnumber>s484767</studentnumber> 
     <cursuscode>ISDTSIP.T470</cursuscode> 
     <enrolldate dateformat="eejjmmdd">20111116</enrolldate> 
     <acquire>ja</acquire><grade>2</grade> 
     <result></result> 
    </enroll> 

</cursus> 

XLS файл:

<xsl:param name="studentnumber"/>..... 

<fo:table-body> 
    <xsl:for-each select="/cursus/enroll[studentnumber='s484766']"> 
     <fo:table-row> 

      <fo:table-cell> 
       <fo:block> <xsl:value-of select="studentnumber"/> </fo:block> 
      </fo:table-cell> 

       <fo:table-cell> 
        <fo:block> <xsl:value-of select="cursuscode"/> </fo:block> 
       </fo:table-cell> 
      </fo:table-row> 
    </xsl:for-each> 
    </fo:table-body> 

Java код:

transformer.setParameter("studentnumber", "s484766"); 

ответ

2

Для чтения значения параметра, необходимо префикс с $ знаком:

<xsl:value-of select="$studentnumber"/> 
+1

Thx, решение действительно знак $: Я использовал код последующих в файле XLS для работы собственно: Robert

Смежные вопросы