| |
| |
| h1. JRE and system packages tuning |
| |
| Some packages are part of the JRE, but could be provided by tier libraries. |
| |
| Some examples of package in this case are: |
| * {{javax.xml.stream}} package is provided by the JRE, but also by Apache Geronimo Spec bundles (and the implementation of provided by Woodstox). |
| * {{com.sun.org.apache.xerces.internal.dom}} package is provided by the JRE, but also by Apache Xerces. |
| * {{javax.activation}} package is provided by the JRE, but also by Apache Geronimo Spec bundles. |
| * {{javax.annotation}} package is provided by the JRE, but also by Apache Geronimo Spec bundles. |
| * etc ... |
| |
| We should define in the Karaf instance which packages should be provided by the JRE or by tier bundles. |
| |
| Moreover, we should manage the exported packages of JRE depending of the JRE version: the JRE 1.6 provides more packages |
| than the 1.5 one. |
| |
| To customize this in Karaf, you can tune the {{etc/jre.properties}} file. |
| |
| In the {{etc/jre.properties}} file, you have two properties {{jre-1.5}} and {{jre-1.6}}. |
| |
| They allow you to define the packages exported by the JRE (in function of the runtime version). |
| Each property provide the exhaustive list of packages provided by the JRE (and so part of the sytem packages). |
| |
| For instance, a "standard" Karaf distribution provides the following {{etc/jre.properties}}: |
| |
| {code} |
| # |
| # Java platform package export properties. |
| # |
| |
| # Standard package set. Note that: |
| # - javax.transaction* is exported with a mandatory attribute |
| jre-1.5= \ |
| javax.accessibility, \ |
| javax.activity, \ |
| javax.crypto, \ |
| javax.crypto.interfaces, \ |
| javax.crypto.spec, \ |
| javax.imageio, \ |
| javax.imageio.event, \ |
| javax.imageio.metadata, \ |
| javax.imageio.plugins.bmp, \ |
| javax.imageio.plugins.jpeg, \ |
| javax.imageio.spi, \ |
| javax.imageio.stream, \ |
| javax.management, \ |
| javax.management.loading, \ |
| javax.management.modelmbean, \ |
| javax.management.monitor, \ |
| javax.management.openmbean, \ |
| javax.management.relation, \ |
| javax.management.remote, \ |
| javax.management.remote.rmi, \ |
| javax.management.timer, \ |
| javax.naming, \ |
| javax.naming.directory, \ |
| javax.naming.event, \ |
| javax.naming.ldap, \ |
| javax.naming.spi, \ |
| javax.net, \ |
| javax.net.ssl, \ |
| javax.print, \ |
| javax.print.attribute, \ |
| javax.print.attribute.standard, \ |
| javax.print.event, \ |
| javax.rmi, \ |
| javax.rmi.CORBA, \ |
| javax.rmi.ssl, \ |
| javax.security.auth, \ |
| javax.security.auth.callback, \ |
| javax.security.auth.kerberos, \ |
| javax.security.auth.login, \ |
| javax.security.auth.spi, \ |
| javax.security.auth.x500, \ |
| javax.security.cert, \ |
| javax.security.sasl, \ |
| javax.sound.midi, \ |
| javax.sound.midi.spi, \ |
| javax.sound.sampled, \ |
| javax.sound.sampled.spi, \ |
| javax.sql, \ |
| javax.sql.rowset, \ |
| javax.sql.rowset.serial, \ |
| javax.sql.rowset.spi, \ |
| javax.swing, \ |
| javax.swing.border, \ |
| javax.swing.colorchooser, \ |
| javax.swing.event, \ |
| javax.swing.filechooser, \ |
| javax.swing.plaf, \ |
| javax.swing.plaf.basic, \ |
| javax.swing.plaf.metal, \ |
| javax.swing.plaf.multi, \ |
| javax.swing.plaf.synth, \ |
| javax.swing.table, \ |
| javax.swing.text, \ |
| javax.swing.text.html, \ |
| javax.swing.text.html.parser, \ |
| javax.swing.text.rtf, \ |
| javax.swing.tree, \ |
| javax.swing.undo, \ |
| javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ |
| javax.xml, \ |
| javax.xml.datatype, \ |
| javax.xml.namespace, \ |
| javax.xml.parsers, \ |
| javax.xml.transform, \ |
| javax.xml.transform.dom, \ |
| javax.xml.transform.sax, \ |
| javax.xml.transform.stream, \ |
| javax.xml.validation, \ |
| javax.xml.xpath, \ |
| org.ietf.jgss, \ |
| org.omg.CORBA, \ |
| org.omg.CORBA_2_3, \ |
| org.omg.CORBA_2_3.portable, \ |
| org.omg.CORBA.DynAnyPackage, \ |
| org.omg.CORBA.ORBPackage, \ |
| org.omg.CORBA.portable, \ |
| org.omg.CORBA.TypeCodePackage, \ |
| org.omg.CosNaming, \ |
| org.omg.CosNaming.NamingContextExtPackage, \ |
| org.omg.CosNaming.NamingContextPackage, \ |
| org.omg.Dynamic, \ |
| org.omg.DynamicAny, \ |
| org.omg.DynamicAny.DynAnyFactoryPackage, \ |
| org.omg.DynamicAny.DynAnyPackage, \ |
| org.omg.IOP, \ |
| org.omg.IOP.CodecFactoryPackage, \ |
| org.omg.IOP.CodecPackage, \ |
| org.omg.Messaging, \ |
| org.omg.PortableInterceptor, \ |
| org.omg.PortableInterceptor.ORBInitInfoPackage, \ |
| org.omg.PortableServer, \ |
| org.omg.PortableServer.CurrentPackage, \ |
| org.omg.PortableServer.POAManagerPackage, \ |
| org.omg.PortableServer.POAPackage, \ |
| org.omg.PortableServer.portable, \ |
| org.omg.PortableServer.ServantLocatorPackage, \ |
| org.omg.SendingContext, \ |
| org.omg.stub.java.rmi, \ |
| org.omg.stub.javax.management.remote.rmi, \ |
| org.w3c.dom, \ |
| org.w3c.dom.bootstrap, \ |
| org.w3c.dom.css, \ |
| org.w3c.dom.events, \ |
| org.w3c.dom.html, \ |
| org.w3c.dom.ls, \ |
| org.w3c.dom.ranges, \ |
| org.w3c.dom.stylesheets, \ |
| org.w3c.dom.traversal, \ |
| org.w3c.dom.views, \ |
| org.xml.sax, \ |
| org.xml.sax.ext, \ |
| org.xml.sax.helpers |
| |
| # Standard package set. Note that: |
| # - javax.transaction* is exported with a mandatory attribute |
| jre-1.6= \ |
| javax.accessibility, \ |
| javax.activation, \ |
| javax.activity, \ |
| javax.annotation, \ |
| javax.annotation.processing, \ |
| javax.crypto, \ |
| javax.crypto.interfaces, \ |
| javax.crypto.spec, \ |
| javax.imageio, \ |
| javax.imageio.event, \ |
| javax.imageio.metadata, \ |
| javax.imageio.plugins.bmp, \ |
| javax.imageio.plugins.jpeg, \ |
| javax.imageio.spi, \ |
| javax.imageio.stream, \ |
| javax.jws, \ |
| javax.jws.soap, \ |
| javax.lang.model, \ |
| javax.lang.model.element, \ |
| javax.lang.model.type, \ |
| javax.lang.model.util, \ |
| javax.management, \ |
| javax.management.loading, \ |
| javax.management.modelmbean, \ |
| javax.management.monitor, \ |
| javax.management.openmbean, \ |
| javax.management.relation, \ |
| javax.management.remote, \ |
| javax.management.remote.rmi, \ |
| javax.management.timer, \ |
| javax.naming, \ |
| javax.naming.directory, \ |
| javax.naming.event, \ |
| javax.naming.ldap, \ |
| javax.naming.spi, \ |
| javax.net, \ |
| javax.net.ssl, \ |
| javax.print, \ |
| javax.print.attribute, \ |
| javax.print.attribute.standard, \ |
| javax.print.event, \ |
| javax.rmi, \ |
| javax.rmi.CORBA, \ |
| javax.rmi.ssl, \ |
| javax.script, \ |
| javax.security.auth, \ |
| javax.security.auth.callback, \ |
| javax.security.auth.kerberos, \ |
| javax.security.auth.login, \ |
| javax.security.auth.spi, \ |
| javax.security.auth.x500, \ |
| javax.security.cert, \ |
| javax.security.sasl, \ |
| javax.sound.midi, \ |
| javax.sound.midi.spi, \ |
| javax.sound.sampled, \ |
| javax.sound.sampled.spi, \ |
| javax.sql, \ |
| javax.sql.rowset, \ |
| javax.sql.rowset.serial, \ |
| javax.sql.rowset.spi, \ |
| javax.swing, \ |
| javax.swing.border, \ |
| javax.swing.colorchooser, \ |
| javax.swing.event, \ |
| javax.swing.filechooser, \ |
| javax.swing.plaf, \ |
| javax.swing.plaf.basic, \ |
| javax.swing.plaf.metal, \ |
| javax.swing.plaf.multi, \ |
| javax.swing.plaf.synth, \ |
| javax.swing.table, \ |
| javax.swing.text, \ |
| javax.swing.text.html, \ |
| javax.swing.text.html.parser, \ |
| javax.swing.text.rtf, \ |
| javax.swing.tree, \ |
| javax.swing.undo, \ |
| javax.tools, \ |
| javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ |
| javax.xml, \ |
| javax.xml.bind, \ |
| javax.xml.bind.annotation, \ |
| javax.xml.bind.annotation.adapters, \ |
| javax.xml.bind.attachment, \ |
| javax.xml.bind.helpers, \ |
| javax.xml.bind.util, \ |
| javax.xml.crypto, \ |
| javax.xml.crypto.dom, \ |
| javax.xml.crypto.dsig, \ |
| javax.xml.crypto.dsig.dom, \ |
| javax.xml.crypto.dsig.keyinfo, \ |
| javax.xml.crypto.dsig.spec, \ |
| javax.xml.datatype, \ |
| javax.xml.namespace, \ |
| javax.xml.parsers, \ |
| javax.xml.soap, \ |
| javax.xml.stream, \ |
| javax.xml.stream.events, \ |
| javax.xml.stream.util, \ |
| javax.xml.transform, \ |
| javax.xml.transform.dom, \ |
| javax.xml.transform.sax, \ |
| javax.xml.transform.stax, \ |
| javax.xml.transform.stream, \ |
| javax.xml.validation, \ |
| javax.xml.ws, \ |
| javax.xml.ws.handler, \ |
| javax.xml.ws.handler.soap, \ |
| javax.xml.ws.http, \ |
| javax.xml.ws.soap, \ |
| javax.xml.ws.spi, \ |
| javax.xml.ws.wsaddressing, \ |
| javax.xml.xpath, \ |
| org.ietf.jgss, \ |
| org.omg.CORBA, \ |
| org.omg.CORBA_2_3, \ |
| org.omg.CORBA_2_3.portable, \ |
| org.omg.CORBA.DynAnyPackage, \ |
| org.omg.CORBA.ORBPackage, \ |
| org.omg.CORBA.portable, \ |
| org.omg.CORBA.TypeCodePackage, \ |
| org.omg.CosNaming, \ |
| org.omg.CosNaming.NamingContextExtPackage, \ |
| org.omg.CosNaming.NamingContextPackage, \ |
| org.omg.Dynamic, \ |
| org.omg.DynamicAny, \ |
| org.omg.DynamicAny.DynAnyFactoryPackage, \ |
| org.omg.DynamicAny.DynAnyPackage, \ |
| org.omg.IOP, \ |
| org.omg.IOP.CodecFactoryPackage, \ |
| org.omg.IOP.CodecPackage, \ |
| org.omg.Messaging, \ |
| org.omg.PortableInterceptor, \ |
| org.omg.PortableInterceptor.ORBInitInfoPackage, \ |
| org.omg.PortableServer, \ |
| org.omg.PortableServer.CurrentPackage, \ |
| org.omg.PortableServer.POAManagerPackage, \ |
| org.omg.PortableServer.POAPackage, \ |
| org.omg.PortableServer.portable, \ |
| org.omg.PortableServer.ServantLocatorPackage, \ |
| org.omg.SendingContext, \ |
| org.omg.stub.java.rmi, \ |
| org.omg.stub.javax.management.remote.rmi, \ |
| org.w3c.dom, \ |
| org.w3c.dom.bootstrap, \ |
| org.w3c.dom.css, \ |
| org.w3c.dom.events, \ |
| org.w3c.dom.html, \ |
| org.w3c.dom.ls, \ |
| org.w3c.dom.ranges, \ |
| org.w3c.dom.stylesheets, \ |
| org.w3c.dom.traversal, \ |
| org.w3c.dom.views, \ |
| org.w3c.dom.xpath, \ |
| org.xml.sax, \ |
| org.xml.sax.ext, \ |
| org.xml.sax.helpers |
| {code} |
| |
| For instance, if we deploy the Apache Geronimo Specs bundle providing the {{javax.xml.stream}} package, we have to comment |
| the {{javax.xml.stream}} package in the the jre-1.6 definition. Indeed, jre-1.5 doesn't provide {{javax.xml.stream}}, it's |
| new in the JRE 1.6: |
| |
| {code} |
| jre-1.6= \ |
| [...] |
| # javax.xml.stream, \ |
| # javax.xml.stream.events, \ |
| # javax.xml.stream.util, \ |
| [...] |
| {code} |