Announcement Announcement Module
No announcement yet.
xalan.jar - is it really required ? Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • xalan.jar - is it really required ?

    Hi All:
    when trying to deploy the application i was getting some errors which got resolved by putting xalan.jar in /WEB-INF/lib since it was missing with the original install files.
    not sure if this was supposed to happen.


  • #2
    It depends what version of JVM you are using. BlazeDS provides multiple implementations of their XPath-based ConfigurationParser, and we configure the Xalan one by default because of noted performance problems with the XPath implementation in the 1.5 JDK.

    The BlazeDS implementation of ConfigurationManager uses some class loading tricks to determine which ConfigurationParser to install, but since those tricks can lead to problems in an OSGi environment, we chose in our ConfigurationManager implementation to install the Xalan based parser by default but leave it configurable via Spring configuration.

    So if you really don't want to use Xalan, and you're okay with the 1.5 Xpath implementation, you should be able to configure the MessageBroker something like the following as an alternative:

    <!-- Bootstraps and exposes the BlazeDS MessageBroker -->
    <bean id="mySpringManagedMessageBroker" 
        class="org.springframework.flex.messaging.MessageBrokerFactoryBean" >
        <property name="configurationManager" ref="flexConfigurationManager"/>
    <!-- Configuration manager that uses the JDK 1.5 ConfigurationParser instead of Xalan -->
    <bean id="flexConfigurationManager" 
        <property name="configurationParser">
            <bean class="flex.messaging.config.XPathServerConfigurationParser"/>


    • #3
      Doesn't quite work in its current state

      FlexConfigurationManager does not have a default constructor and thus cannot be used as you suggest (unless there is some way I don't know about, to use constructor injection and pass in the ResourceLoader...). Currently, it has a 2 parameter constructor - 1) A ResourceLoader. 2) A configuration path String.

      It should probably implement ResourceLoaderAware to take care of the first param. And the second could be injected (if there were a default constructor).



      • #4
        Ahh, good point, that needs to be fixed. Created an issue for it: