You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-users@xalan.apache.org by "Bhattacharjee, Joydeep" <jo...@capgemini.com> on 2014/05/02 08:14:32 UTC

Problems with latest xalan

Hi ,
      I am facing a grave problem , I was using the following TransformerFactory for my xsl transformation in websphere 7

                Djavax.xml.transform.TransformerFactory=org.apache.xalan.xsltc.trax.TransformerFactoryImp
This worked fine . However we are upgrading to websphere 8.5.5 where the latest xalan.jar(xalan-j_2_7_2) do not have org.apache.xalan.xsltc.trax.TransformerFactoryImp class so I used
                org.apache.xalan.xsltc.trax.TransformerFactoryImp = org.apache.xalan.processor.TransformerFactoryImpl
But now I am having errors when the xsl are getting transformed
Line #2; Column #117; Cannot add attribute name after child nodes or before an element is produced.  Attribute will be ignored

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  ---> This is where the error happens
    <xsl:import href="../../pf/MSIE/AREK-format.xsl"/>
    <xsl:import href="../../pf/MSIE/AREK-page.xsl"/>
    <xsl:import href="../../pf/MSIE/AREK-leavestop.xsl"/>
    <xsl:import href="../../pf/MSIE/AREK-DynamicHREFTwoParameters.xsl"/>
    <xsl:import href="../../pf/MSIE/AREK-DynamicHREFExternal.xsl"/>
    <xsl:import href="virheKasittely.xsl"/>
    <xsl:import href="ProfiloituTeksti.xsl"/>
    <xsl:import href="Sivutus.xsl"/>
    <xsl:import href="NavBar_SCR130SopimustyonantajanAnsiojaksot.xsl"/>
    <xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" encoding="UTF-8" indent="yes" method="xml" version="1.0"/>
    <xsl:param name="debug"/>
    <xsl:template match="/">
        <xsl:call-template name="base">
            <xsl:with-param name="title">
  <NlsText nlsID="KaAn_SCR130Palvelussuhdelistaus_otsikko_jarjestelma">Ansaintajärjestelmä</NlsText>
            </xsl:with-param>
            <xsl:with-param name="pageType" select="$pageNormalInfoType"/>
            <xsl:with-param name="logoUrl">#</xsl:with-param>
            <xsl:with-param name="logoImageFilename">AREK-logo.gif</xsl:with-param>
            <xsl:with-param name="toolBarPrintUrl">#</xsl:with-param>
            <xsl:with-param name="toolBarSignOutUrl">logOut</xsl:with-param>
            <xsl:with-param name="imageLocation">../../images</xsl:with-param>
            <xsl:with-param name="userOrganization">/RenderData/ProcessData/joku/polku/laitos</xsl:with-param>
            <xsl:with-param name="navBarType" select="$navBarTypeMDE"/>
            <xsl:with-param name="buttonsOnLeft">0</xsl:with-param>
            <xsl:with-param name="debug" select="$debug"/>
            <xsl:with-param name="helpLink"/>
            <!-- xsl:with-param name="verkkoTyopoytaUrl">../joku/polku/verkkotyopoyta.html</xsl:with-param-->
            <xsl:with-param name="userDialogType">
                <xsl:choose>
                   <xsl:when test="/RenderData/ErrorData/Error">userDialogTypeError</xsl:when>
                    <xsl:otherwise>userDialogTypeComment</xsl:otherwise>
                </xsl:choose>
            </xsl:with-param>
            <xsl:with-param name="activeTargetData">
                <xsl:choose>
                    <xsl:when test="normalize-space(/RenderData/ProcessData/henkilo/henkilotunnus)  != null or normalize-space(/RenderData/ProcessData/henkilo/henkilotunnus)  != ''">
                        <xsl:value-of select="/RenderData/ProcessData/henkilo/henkilotunnus"/>
                        <xsl:text> :: </xsl:text>
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="/RenderData/ProcessData/henkilo/syntymaaika/@display"/>
                        <xsl:text> :: </xsl:text>
                        <xsl:value-of select="normalize-space(/RenderData/ProcessData/henkilo/sukupuoli/arvo)"/>
                        <xsl:text> :: </xsl:text>
                    </xsl:otherwise>
                </xsl:choose>
                <xsl:value-of select="/RenderData/ProcessData/henkilo/sukunimi"/>
                <xsl:text>, </xsl:text>
                <xsl:value-of select="/RenderData/ProcessData/henkilo/etunimet"/>
            </xsl:with-param>
            <xsl:with-param name="userDialogType">
                <xsl:choose>
                    <xsl:when test="/RenderData/ErrorData/Error">userDialogTypeError</xsl:when>
                    <xsl:otherwise>userDialogTypeComment</xsl:otherwise>
                </xsl:choose>
            </xsl:with-param>
            <xsl:with-param name="id">SCR130SopimustyonantajanAnsiojaksot</xsl:with-param>
            <xsl:with-param name="channel">MSIE</xsl:with-param>
        </xsl:call-template>
        <xsl:call-template name="normal-pagefoot"/>
    </xsl:template>
    <!-- Tuottaa sovelluskohtaisen sivun sisällön -->
    <xsl:template name="AREK-user-content">
        <xsl:call-template name="DynamicAction"/>
        <xsl:call-template name="PFBlock"/>
        <div class="scroll">
            <h1 class="head1">
                Sopimustyönantajan ansiojaksot
            </h1>
            <!-- Sivutus -->
            <xsl:call-template name="Sivutus">
                <xsl:with-param name="lkm-naytolla" select="count(/RenderData/ProcessData/kKAHenkilonJaksoLista/sopimusTAIlmPVMJakso)"/>
            </xsl:call-template>
            <!-- Taulun otsikkorivi -->
            <div class="haku_listarea">
                <table class="list">
                    <tr>
                        <td nowrap="nowrap">
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                   <xsl:with-param name="value">
                                        Työnantaja
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td nowrap="nowrap">
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        Ansio
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td>
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        kk.vvvv
                                    </xsl:with-param>
                                    <xsl:with-param name="explanation">
                                        Kuukausi, vuosi
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td>
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        Ammatti
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td>
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        Tila
                                    </xsl:with-param>
                                    <xsl:with-param name="explanation">
                                        Jos jakso on mitätöity, tässä sarakkeessa on merkintänä M
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td>
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        EY
                                    </xsl:with-param>
                                    <xsl:with-param name="explanation">
                                        Jos jakso on EY-siirretty, tässä sarakkeessa on merkintänä S
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                        <td>
                            <b>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value">
                                        Laki
                                    </xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </b>
                        </td>
                    </tr>
                    <!-- Taulun sisältörivit -->
                    <xsl:for-each select="/RenderData/ProcessData/kKAHenkilonJaksoLista/sopimusTAIlmPVMJakso">
                        <!--
                                                                                                                Lihavoitu väliotsikko: vuosi, vakuutusnumero.
                                                                                                                Väliotsikossa esitetään pelkkä vuosi, ei kuukautta. Vuosiluku on aina <ansionKohdeVvvv> -elementin arvona, joita
                                                                                                                luodaan vain jos vuosiluku tai vakuutusnumero vaihtuu -> aina jos löytyy ansionKohdeVvvv-niminen elementti,
                                                                                                                on kyseessä väliotsikkorivi.
                                                                                                -->
                        <xsl:if test="ansionKohdeVvvv">
                            <tr class="colorrow">
                                <td>
                                    <b>
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="ansionKohdeVvvv/arvo"/>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="vakuutusnumero/@display"/>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                    </b>
                                </td>
                                <td class="bold" nowrap="nowrap">
                                    <xsl:variable name="vuosi" select="ansionKohdeVvvv/arvo"/>
                                    <xsl:variable name="vakuutusnumero" select="vakuutusnumero/arvo"/>
                                    <xsl:choose>
                                        <xsl:when test="normalize-space(vakuutusnumero/nayttoVihje) and normalize-space(vakuutusnumero/nayttoVihje) != '3'">
                                            <xsl:call-template name="AREK-statictext">
                                                <xsl:with-param name="value">*****</xsl:with-param>
                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                            </xsl:call-template>
                                        </xsl:when>
                                        <xsl:otherwise>
                                            <xsl:call-template name="AREK-format">
                                                <xsl:with-param name="source">
                                                    <xsl:choose>
                                                        <xsl:when test="/RenderData/ProcessData/summausHakutulos[vuosi=$vuosi and vakuutusnumero=$vakuutusnumero]/summa">
                                                            <xsl:value-of select="/RenderData/ProcessData/summausHakutulos[vuosi=$vuosi and vakuutusnumero=$vakuutusnumero]/summa"/>
                                                        </xsl:when>
                                                        <xsl:otherwise>
                                                                                                                                                                                                                                                0.00
                                                                                                                                                                                                                                </xsl:otherwise>
                                                    </xsl:choose>
                                                </xsl:with-param>
                                                <xsl:with-param name="format" select="$formatMoney"/>
                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                            </xsl:call-template>
                                        </xsl:otherwise>
                                    </xsl:choose>
                                </td>
                                <td/>
                                <td>
                                    <!-- Jos laki on joku muu kuin MEL, tehdään väliotsikko "Osasto"-->
                                    <xsl:if test="normalize-space(elakelaki/arvo) != 'MEL'">
                                        <b>
                                            <xsl:call-template name="AREK-statictext">
                                                <xsl:with-param name="value">
                                                    Osasto
                                                </xsl:with-param>
                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                            </xsl:call-template>
                                        </b>
                                    </xsl:if>
                                </td>
                                <td/>
                                <td/>
                                <td/>
                            </tr>
                        </xsl:if>
                        <tr>
                            <!-- VER3YP: ITPAL00108346: mitätöityjen jaksojen tiedot näytetään harmaalla -->
                            <xsl:if test="normalize-space(suojattuTila/arvo) = 'M'">
                                <xsl:attribute name="style">Color:Gray</xsl:attribute>
                            </xsl:if>
                            <td style="word-wrap:break-word" width="300">
                                <!-- Jotta word-wrap toimii oikein, solulla pitää olla absoluuttinen leveys. ITPAL00107967 -->
                                <xsl:choose>
                                    <xsl:when test="normalize-space(vakuutusnumero/oikeus)='2REK'">
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="normalize-space(vakuutusnumero/@display)"/>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <!-- Suojattu -->
                                        <a>
                                            <xsl:call-template name="ProfiloituTeksti">
                                                <xsl:with-param name="arvoOlio" select="vakuutusnumero"/>
                                                <xsl:with-param name="arvoOlio2" select="tyonantajanNimi"/>
                                                <xsl:with-param name="onkoLinkki" select="1"/>
                                                <xsl:with-param name="linkinParametriName">ArekEventValittuJakso</xsl:with-param>
                                                <xsl:with-param name="linkinParametriParameter1">valittuRivi</xsl:with-param>
                                                <xsl:with-param name="linkinParametriValue1" select="count(preceding-sibling::sopimusTAIlmPVMJakso)"/>
                                                <xsl:with-param name="linkinParametriActionId">SCR130_jaksolistasivutus_linkkiJakso</xsl:with-param>
                                            </xsl:call-template>
                                        </a>
                                        <!--                <a>
                                                                                                                                                                <xsl:call-template name="AREK-DynamicHREFTwoParameters">
                                                                                                                                                                                <xsl:with-param name="name">SopimustyonantajaIlmanPVM</xsl:with-param>
                                                                                                                                                                                <xsl:with-param name="value">SopimustyonantajaIlmanPVM</xsl:with-param>
                                                                                                                                                                                <xsl:with-param name="parameter1">valittuRivi</xsl:with-param>
                                                                                                                                                                                <xsl:with-param name="value1" select="count(preceding-sibling::sopimusTAIlmPVMJakso)"/>
                                                                                                                                                                </xsl:call-template>
                                                                                                                                                                <xsl:call-template name="AREK-statictext">
                                                                                                                                                                                <xsl:with-param name="value" select="vakuutusnumero/arvo"/>
                                                                                                                                                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                                                                                                                                                </xsl:call-template>
                                                                                                                                                                <xsl:call-template name="AREK-statictext">
                                                                                                                                                                                <xsl:with-param name="value" select="tyonantajanNimi"/>
                                                                                                                                                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                                                                                                                                                </xsl:call-template>
                                                                                                                                                </a>-->
                                    </xsl:otherwise>
                                </xsl:choose>
                                <!-- VER3T ITPAL00071524: Suojaus-->
                                <!--<a>
                                                                                                                                                <xsl:call-template name="AREK-DynamicHREFTwoParameters">
                                                                                                                                                                <xsl:with-param name="name">ArekEventValittuJakso</xsl:with-param>
                                                                                                                                                                <xsl:with-param name="value">ArekEventValittuJakso</xsl:with-param>
                                                                                                                                                                <xsl:with-param name="parameter1">valittuRivi</xsl:with-param>
                                                                                                                                                                <xsl:with-param name="value1" select="position() - 1"/>
                                                                                                                                                                <xsl:with-param name="actionId">SCR130_jaksolistasivutus_linkkiJakso</xsl:with-param>
                                                                                                                                                </xsl:call-template>
                                                                                                                                                <xsl:call-template name="AREK-statictext">
                                                                                                                                                                <xsl:with-param name="value" select="vakuutusnumero/arvo"/>
                                                                                                                                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                                                                                                                                </xsl:call-template>
                                                                                                                                                <xsl:call-template name="AREK-statictext">
                                                                                                                                                                <xsl:with-param name="value" select="tyonantajanNimi"/>
                                                                                                                                                                <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                                                                                                                                </xsl:call-template>
                                                                                                                                </a>-->
                            </td>
                            <td nowrap="nowrap">
                                <!-- Jotta ansio ei rivittyisi, pitää olla nowrap ITPAL00104675 -->
                                <xsl:choose>
                                    <xsl:when test="normalize-space(ansio/arvo)">
                                        <xsl:call-template name="AREK-format">
                                            <xsl:with-param name="source" select="ansio/@display"/>
                                            <xsl:with-param name="format" select="$formatMoney"/>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <xsl:value-of select="ansio/@display"/>
                                    </xsl:otherwise>
                                </xsl:choose>
                            </td>
                            <td>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value" select="ansionKohdeKkVvvv/@display"/>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </td>
                            <td>
                                <!-- Jos MEL näytetään ammatti ja selite -->
                                <xsl:choose>
                                    <xsl:when test="normalize-space(elakelaki/arvo) = 'MEL'">
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="ammatti/arvo"/>
                                            <xsl:with-param name="explanation" select="ammatti/@display"/>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                        <!--<xsl:call-template name="ProfiloituTeksti">
                                                                                                                                                                                <xsl:with-param name="arvoOlio" select="ammatti"/>
                                                                                                                                                                                <xsl:with-param name="selite" select="ammatti/@display"/>
                                                                                                                                                                                <xsl:with-param name="onkoLinkki" select="0"/>
                                                                                                                                                                </xsl:call-template>-->
                                    </xsl:when>
                                    <!-- Jos joku muu, näytetään osasto -->
                                    <xsl:otherwise>
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="ansionOsasto/@display"/>
                                            <!--            <xsl:with-param name="explanation" select="ansionOsasto/@display"/>-->
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                        <!--<xsl:call-template name="ProfiloituTeksti">
                                                                                                                                                                                <xsl:with-param name="arvoOlio" select="ansionOsasto"/>
                                                                                                                                                                                <xsl:with-param name="selite" select="ansionOsasto/@display"/>
                                                                                                                                                                <xsl:with-param name="onkoLinkki" select="0"/>
                                                                                                                                                                </xsl:call-template>-->
                                    </xsl:otherwise>
                                </xsl:choose>
                            </td>
                            <td>
                                <!-- Jos tila on mitätöity (1) merkitään M, muuten ei näytetä mitään -->
                                <xsl:choose>
                                    <xsl:when test="normalize-space(suojattuTila/arvo) = 'M'">
                                        <xsl:call-template name="ProfiloituTeksti">
                                            <xsl:with-param name="arvoOlio" select="suojattuTila"/>
                                            <xsl:with-param name="selite" select="'Jakso mitätöity'"/>
                                        </xsl:call-template>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="suojattuTila/arvo"/>
                                            <xsl:with-param name="explanation">
                                                Mitätöity
                                            </xsl:with-param>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                    </xsl:otherwise>
                                </xsl:choose>
                            </td>
                            <td>
                                <!-- Jos eyTila on siirretty (1) merkitään S, muuten ei näytetä mitään -->
                                <xsl:choose>
                                    <xsl:when test="normalize-space(suojattuEyTila/arvo) = 'S'">
                                        <xsl:call-template name="ProfiloituTeksti">
                                            <xsl:with-param name="arvoOlio" select="suojattuEyTila"/>
                                            <xsl:with-param name="selite" select="'Jakso EY-siirretty'"/>
                                        </xsl:call-template>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <xsl:call-template name="AREK-statictext">
                                            <xsl:with-param name="value" select="suojattuEyTila/arvo"/>
                                            <xsl:with-param name="explanation">
                                                Siirretty
                                            </xsl:with-param>
                                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                        </xsl:call-template>
                                    </xsl:otherwise>
                                </xsl:choose>
                            </td>
                            <td>
                                <xsl:call-template name="AREK-statictext">
                                    <xsl:with-param name="value" select="elakelaki/arvo"/>
                                    <xsl:with-param name="explanation" select="elakelaki/@display"/>
                                    <xsl:with-param name="maxlength">5</xsl:with-param>
                                    <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                                </xsl:call-template>
                            </td>
                        </tr>
                    </xsl:for-each>
                </table>
            </div>
        </div>
    </xsl:template>
    <!-- Ei-hakutuloksia -->
    <xsl:template name="AREK-user-dialog">
        <xsl:call-template name="VirheKasittely">
            <xsl:with-param name="code" select="1"/>
        </xsl:call-template>
        <xsl:choose>
            <xsl:when test="/RenderData/ErrorData/Error"/>
            <xsl:otherwise>
                <xsl:if test="count(/RenderData/ProcessData/kKAHenkilonJaksoLista/sopimusTAIlmPVMJakso) = '0'">
                    <p>
                        <xsl:call-template name="AREK-statictext">
                            <xsl:with-param name="value">
                                Valittuun henkilöön ei liittynyt jaksoja.
                            </xsl:with-param>
                            <xsl:with-param name="invalidationClass" select="$invalidationClass3"/>
                        </xsl:call-template>
                    </p>
                </xsl:if>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>
    <xsl:template name="AREK-user-gen-button-on-right"/>
    <xsl:template name="AREK-user-gen-button-on-left"/>
    <xsl:template name="AREK-user-header"/>
    <xsl:template name="AREK-user-navbar"/>
    <xsl:template name="AREK-user-gen-leaf-href"/>
</xsl:stylesheet>

I am not having any ideas regarding this any help will be appreciated.

Regards,
Joydeep

This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.