Hi,
Im using java:/net.sf.saxon.sql.SQLElementFactory to insert entries into
a db.
My template looks like this:
<xsl:template name="sql-insert">
<xsl:param name="doknr"/>
<xsl:param name="gericht"/>
<xsl:param name="datum"/>
<xsl:param name="filename"/>
<xsl:param name="gz"/>
<xsl:param name="typ"/>
<xsl:param name="sz"/>
<xsl:variable name="connection"
as="java:java.sql.Connection"
xmlns:java="http://saxon.sf.net/java-type">
<sql:connect driver="{$driver}"
database="{$database}" user="{$user}" password="{$password}">
<xsl:fallback>
<xsl:message terminate="yes">SQL
extensions are not installed</xsl:message>
</xsl:fallback>
</sql:connect>
</xsl:variable>
<xsl:choose>
<xsl:when test="$typ = 'Volltext'">
<xsl:choose>
<xsl:when test="$gericht =
'OGH'">
<sql:insert
connection="$connection" table="Volltext_OGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
<sql:column
name="SZ" select="normalize-space($sz)"/>
</sql:insert>
</xsl:when>
<xsl:when test="$gericht =
'VWGH'">
<sql:insert
connection="$connection" table="Volltext_VWGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
<xsl:when test="$gericht =
'VFGH'">
<sql:insert
connection="$connection" table="Volltext_VFGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
<xsl:when
test="starts-with($gericht, 'AUSL')">
<sql:insert
connection="$connection" table="Volltext_AUSL">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Gericht" select="normalize-space($gericht)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$gericht =
'OGH'">
<sql:insert
connection="$connection" table="Rechtssatz_OGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
<xsl:when test="$gericht =
'VWGH'">
<sql:insert
connection="$connection" table="Rechtssatz_VWGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
<xsl:when test="$gericht =
'VFGH'">
<sql:insert
connection="$connection" table="Rechtssatz_VFGH">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
<xsl:when
test="starts-with($gericht, 'AUSL')">
<sql:insert
connection="$connection" table="Rechtssatz_AUSL">
<sql:column
name="DOKNR" select="normalize-space($doknr)"/>
<sql:column
name="Gericht" select="normalize-space($gericht)"/>
<sql:column
name="Datum" select="normalize-space($datum)"/>
<sql:column
name="Filename" select="normalize-space($filename)"/>
<sql:column
name="Gesnr" select="normalize-space($gz)"/>
</sql:insert>
</xsl:when>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
<sql:close connection="$connection"/>
</xsl:template>
Now it seems to work for some time/files but then i get the following
error:
Error on line 35 of sql_insert.xslt:
SXSQ0003: JDBC Connection Failure: Network error IOException: Address
already in use: connect
at xsl:call-template name="sql-insert"
(file:/R:/Produktion/Cases/xslt/transformiere_daten.xslt#103)
at xsl:apply-templates
(file:/R:/Produktion/Cases/xslt/transformiere_urteile.xslt#139)
processing
/result/data[1]/risdokument[1]/metadaten[1]/judikatur[1]/gz[1]/item[1]
at xsl:apply-templates
(file:/R:/Produktion/Cases/xslt/transformiere_urteile.xslt#31)
processing
/result/data[1]/risdokument[1]/dokumentliste[1]/hauptdokument[1]/inhalt[
1]/daten[1]/xml[1]/nutzdaten[1]
at xsl:apply-templates
(file:/R:/Produktion/Cases/xslt/transformiere_daten.xslt#86)
processing /result/data[1]/risdokument[1]
While processing JFT_10048998_95W00I05_00.xml: Run-time errors were
reported
Does anyone see what is causing this problem ?!
I do close the connection in the end of the template so how can this be
happening ?!
Kind regards
. . . . . . . . . . . . . . . . . . . . . . . . . .
Patrick Szabo
XSLT Developer
LexisNexis
Marxergasse 25, 1030 Wien
mailto:patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at
Tel.: 00431 534521573
Fax: +43 (1) 534 52 - 146
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--