Details
-
Bug
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
2.5
-
None
-
Security Level: No security risk; visible to anyone (Ordinary problems in Xalan projects. Anybody can view the issue.)
-
None
-
Operating System: All
Platform: All
-
16481
Description
Several classes read resources through thread context ClassLoader. When it is
right thing for factories, it it is definitely not right for static field
initialization. Due to this it is problematic for me to use Xalan as Eclipse
plugin. This might be issue in other environments with many ClassLoaders too.
These two classes should not use context Classloader:
org.apache.xalan.serialize.Encodings
org.apache.xalan.templates.OutputProperties
Instead they should simply read properties from their OWN Classloader as
org.apache.xalan.serialize.CharInfo does:
ClassLoader cl = CharInfo.class.getClassLoader();
There are one more class:
org.apache.xalan.processor.TransformerFactoryImpl
It does "System.setProperties(systemProps)" in it's static initialization!
Actually it does'nt set anything what could be needed except sax-driver (which
should be defined in META-INF/services by default!), and I think it is something
from legacy code and must be removed now (to remove possible side effects)...