Jan Schulz <[EMAIL PROTECTED]> writes: > Ok, so I misunderstood, what the libxalan-java package is about. On > the other hand, I don't understand things like that then: > > apt-cache show fop: > [...] > Depends: java-common, j2re1.3 | j2re1.4 | java2-runtime, > libxerces-java, libxalan2-java, libbsf-java (>> 20010106-2), > liblogkit-java, libavalon-framework-java (>= 4.1.2-2), libbatik-java > (>= 1.5final) > > It seems that some packages use xalan directly and having it upgrading > to a newer breaking API version will break this apps. Therfore I think > it would make some sense to treat this packages 'as API' as long as we > have software, which uses internal API.
There is only *one* file that has a the string 'xalan' in fop: /tmp/fop-0.20.5/src/org/apache/fop/tools/xslt/XSLTransform.java private static Class getTransformClass() { try { // try trax first Class transformer = Class.forName("javax.xml.transform.Transformer"); // ok, make sure we have a liaison to trax transformer = Class.forName("org.apache.fop.tools.xslt.TraxTransform"); return transformer; } catch (ClassNotFoundException ex) {} // otherwise, try regular xalan1 try { Class transformer = Class.forName("org.apache.xalan.xslt.XSLTProcessor"); // get the liaison transformer = Class.forName("org.apache.fop.tools.xslt.Xalan1Transform"); return transformer; } catch (ClassNotFoundException ex) {} return null; } If FOP find a TrAX compliant transformer, then, the Class.forName() is not called. Everything with xsl(t) transformation must be calls to the TrAX API (javax.xml.transform.*) There are three different mechanisms to find the compliant TrAX implementation. >From gnujaxp: ~/gnu-classpathx/jaxp/source/javax/xml/transform/TransformerFactory.java /** * Returns a new TransformerFactory. The name of this class * is found by checking, in order: * the <em>javax.xml.transform.TransformerFactory</em> * system property, * <em>$JAVA_HOME/lib/jaxp.properties</em> for the key with * that same name, * JAR files in the class path with a <em>META-INF/services</em> * file with that same name, * else the compiled-in platform default. */ public static TransformerFactory newInstance() throws TransformerFactoryConfigurationError http://java.sun.com/xml/jaxp/docs.html > I have no idea, how fop uses xalan, but if it is like 'call the app', > then libxalan-java should probably become 'xalan' anyway. No, it's not that way. > Another 'IMO': Everything with lib in front should be 'library > packaged'. Otherwise it wouldn't be 'lib' (I know that this isn't true > with some normal packages, but... :) True ;) -- .''`. : :' :rnaud `. `' `- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]