You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by Guillaume Nodet <gn...@gmail.com> on 2008/10/23 11:15:38 UTC

[DISCUSS] ServiceMix 4 and JAXP

We currently have some limitations wrt to xml parsing.
The way the ServiceMix Kernel is currently set up only works with Sun JVM.
This is because only the com.sun.* packages are exported by the system
bundle, so on non Sun JVM, loading the implementation JAR seems to
fail.
One way to solve that, would be to export also the packages from other JVM.

However, doing that won't solve another problem.  Also, the Sun's SAAJ
implementation depends on the Sun' JAXP RI which mean we have to ship
it in all cases and can't rely on the JVM.

So the current solution I have in mind is:
  * make the JAXP api an OSGi bundle
  * make the JAXP ri an OSGi bundle
  * ship both with Smx Kernel
  * remove the com.sun.org.apache.* packages from the system bundle
boot classpath
  * remove the javax.xml.*, org.w3c.* and org.xml.sax.* packages from
the system bundle boot classpath

This should ensure a consistent behavior on all JVMs and allow SAAJ to work.
Any other idea ?

-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [DISCUSS] ServiceMix 4 and JAXP

Posted by Guillaume Nodet <gn...@gmail.com>.
Well, the Sun's xml parsers are actually repackaged versions of xalan
and xerces ;-)
But yeah, I really think we need a default config that work in all cases.

On Thu, Oct 23, 2008 at 2:19 PM, Gert Vanthienen
<ge...@skynet.be> wrote:
> Guillaume,
>
> This sounds OK to me.  Some others vendors might be picky about support when
> we use Sun implementations for this stuff, but I guess if people still want
> to use another implementation, they can just remove the implementation
> bundles and add the necessary exports to the system bundle classpath.  So +1
> for me, we need to get this fixed!
>
> Regards,
>
> Gert
>
> Guillaume Nodet wrote:
>>
>> We currently have some limitations wrt to xml parsing.
>> The way the ServiceMix Kernel is currently set up only works with Sun JVM.
>> This is because only the com.sun.* packages are exported by the system
>> bundle, so on non Sun JVM, loading the implementation JAR seems to
>> fail.
>> One way to solve that, would be to export also the packages from other
>> JVM.
>>
>> However, doing that won't solve another problem.  Also, the Sun's SAAJ
>> implementation depends on the Sun' JAXP RI which mean we have to ship
>> it in all cases and can't rely on the JVM.
>>
>> So the current solution I have in mind is:
>>  * make the JAXP api an OSGi bundle
>>  * make the JAXP ri an OSGi bundle
>>  * ship both with Smx Kernel
>>  * remove the com.sun.org.apache.* packages from the system bundle
>> boot classpath
>>  * remove the javax.xml.*, org.w3c.* and org.xml.sax.* packages from
>> the system bundle boot classpath
>>
>> This should ensure a consistent behavior on all JVMs and allow SAAJ to
>> work.
>> Any other idea ?
>>
>>
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [DISCUSS] ServiceMix 4 and JAXP

Posted by Gert Vanthienen <ge...@skynet.be>.
Guillaume,

This sounds OK to me.  Some others vendors might be picky about support 
when we use Sun implementations for this stuff, but I guess if people 
still want to use another implementation, they can just remove the 
implementation bundles and add the necessary exports to the system 
bundle classpath.  So +1 for me, we need to get this fixed!

Regards,

Gert

Guillaume Nodet wrote:
> We currently have some limitations wrt to xml parsing.
> The way the ServiceMix Kernel is currently set up only works with Sun JVM.
> This is because only the com.sun.* packages are exported by the system
> bundle, so on non Sun JVM, loading the implementation JAR seems to
> fail.
> One way to solve that, would be to export also the packages from other JVM.
>
> However, doing that won't solve another problem.  Also, the Sun's SAAJ
> implementation depends on the Sun' JAXP RI which mean we have to ship
> it in all cases and can't rely on the JVM.
>
> So the current solution I have in mind is:
>   * make the JAXP api an OSGi bundle
>   * make the JAXP ri an OSGi bundle
>   * ship both with Smx Kernel
>   * remove the com.sun.org.apache.* packages from the system bundle
> boot classpath
>   * remove the javax.xml.*, org.w3c.* and org.xml.sax.* packages from
> the system bundle boot classpath
>
> This should ensure a consistent behavior on all JVMs and allow SAAJ to work.
> Any other idea ?
>
>