Avatar billede margitbork Nybegynder
25. oktober 2013 - 14:01 Der er 5 kommentarer og
1 løsning

Schematron validering performance

Hej
Jeg har en kodestump til schematron-validering af oioxml filer.
Når jeg kører det på min Windows7 maskine tager valideringen 3-4 sec. Men når det kører i vores AIX maskine tager det op til 1 minut.
Jeg kan se at det er instancieringen af mit Transformer objekt der tager tiden, men hvorfor denne forskel på Windows og AIX miljøerne?
Er der nogen her der har et bud på en forklaring ?
Jeg bruger javax.xml.Transformer.

Margit
Avatar billede arne_v Ekspert
25. oktober 2013 - 15:16 #1
Indeholder schema referancer til externe URL's som skal hentes?

(nogen gange har udvikler maskiner meget bedre internet connection end produktions maskiner)
Avatar billede margitbork Nybegynder
25. oktober 2013 - 15:49 #2
Schema'er ligger lokalt på den maskine der skal køre schematron-valideringen, så det burde ikke være det.
på Windows maskinen er JAVA_HOME= C:/JAVA/jdk1.6.0.29
på AIX er JAVA_HOME=/usr/java6
Så de bruger begge en java 6.
Avatar billede arne_v Ekspert
28. oktober 2013 - 03:15 #3
Men indeholder schemaet nogle referancer til URL'er?
Avatar billede margitbork Nybegynder
28. oktober 2013 - 07:49 #4
Nej der er ingen URL referencer. Men jeg tror jeg har fundet kærnen af problemet. Den Java version vi anvender på vores AIX maskine er en IBM java og den anvender en anden implementeringsklasse af Transformeren, så det er noget med at jeg skal have sat på nogle parametre til jvm'en
Angiveligt har TXE-J compileren afløst XSLT4J compileren. Den skulle have bedre performance ved validering af flere dokumenter, men når det er et enkelt dokument der skal valideres skulle det være bedre at anvende XSLT4J compileren, da load af schema tager noget længere tid i TXE-J compileren... Så jeg kigger på indstillinger i jaxp.properties og stax.properties.

Margit
Avatar billede margitbork Nybegynder
28. oktober 2013 - 08:32 #5
Løsningen for mig var denne:
-Djavax.xml.transform.TransformerFactory="org.apache.xalan.processor.TransformerFactoryImpl"
Avatar billede margitbork Nybegynder
11. november 2013 - 09:02 #6
;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester