Portál AbcLinuxu, 5. května 2025 13:01
jelen@gentoo ~/Dropbox/$ java -jar /usr/share/saxon-9/lib/saxon.jar dta_pha/20121231_OB_554782_UKSH.xml vymenny_format.xsl > inserty_pha.sql Warning: at xsl:stylesheet on line 2 column 1473 of vymenny_format.xsl: Running an XSLT 1.0 stylesheet with an XSLT 2.0 processor Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at net.sf.saxon.tinytree.TinyTree.ensureNodeCapacity(Unknown Source) at net.sf.saxon.tinytree.TinyTree.addNode(Unknown Source) at net.sf.saxon.tinytree.TinyBuilder.makeTextNode(Unknown Source) at net.sf.saxon.tinytree.TinyBuilder.characters(Unknown Source) at net.sf.saxon.event.Stripper.characters(Unknown Source) at net.sf.saxon.event.ReceivingContentHandler.flush(Unknown Source) at net.sf.saxon.event.ReceivingContentHandler.endElement(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:604) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1759) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2915) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525) at net.sf.saxon.event.Sender.sendSAXSource(Unknown Source) at net.sf.saxon.event.Sender.send(Unknown Source) at net.sf.saxon.Controller.transform(Unknown Source) at net.sf.saxon.Transform.processFile(Unknown Source) at net.sf.saxon.Transform.doTransform(Unknown Source) at net.sf.saxon.Transform.main(Unknown Source)
Ahoj.
Zpracovavam "jen" zakladni sadu dat (soubory _UZSZ.xml
), ale xsltproc
u me (4 GB RAM) taky neprosel. Pouzivam Xalan a projde mi i soubor pro Prahu. Spoustim to z PHP skriptu pomoci exec
a vystup ctu primo zpatky do skriptu.
Na Fedore 16 (moje pracovni stanice, na ni delam import uplnych dat)
$s = exec("Xalan \"".$ZdrojovyXMLsoubor."\" \"".$XSLTSablona."\"", $VystupniData);
Na Debianu (virtualni server, delam jen updaty)
$s = exec("xalan -in \"".$ZdrojovyXMLsoubor."\" -xsl \"".$XSLTSablona."\"", $VystupniData);
Ve skriptu pak pracuji s $VystupniData
.
Napadlo me rozdelit sablonu do nekolika kroku, transformovat to postupne (na nekolik pruchodu) a do db to vkladat postupne (pri prvnim pruchodu insert, pri dalsich update podle kodu prvku).
Dejf
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.