This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 166506 - Split JAXB library module to API part and implementation part
Summary: Split JAXB library module to API part and implementation part
Status: RESOLVED FIXED
Alias: None
Product: xml
Classification: Unclassified
Component: JAXB (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: Milan Kuchtiak
URL:
Keywords: API_REVIEW_FAST
Depends on:
Blocks:
 
Reported: 2009-06-03 17:17 UTC by Milan Kuchtiak
Modified: 2009-09-30 15:15 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Milan Kuchtiak 2009-06-03 17:17:06 UTC
Currently there is a JAXB library wrapper module in IDE cluster that is used by other modules.
Problem of this module is the big number of friends. 
Another problem is that using JAXB API in Netbeans modules requires to establish a friend contract.

The JAXB library module "wraps" the following five jar files:
activation.jar
jaxb-api.jar
jaxb-impl.jar
jaxb-xjc.jar
jsr173_api.jar

The solution is to divide the JAB library into JAXB API part (stable module) and JAXB implementation part (friend module).
Most of the clients would only depend on API Module, so the number of friends, of implementation part, can be reduced
dramatically.

Proposed jar files in JAXB API module:
activation.jar
jaxb-api.jar
jsr173_api.jar

Proposed public-packages of JAXB API module:
                <package>javax.activation</package>
                <package>javax.xml.bind</package>
                <package>javax.xml.bind.annotation</package>
                <package>javax.xml.bind.annotation.adapters</package>
                <package>javax.xml.bind.attachment</package>
                <package>javax.xml.bind.helpers</package>
                <package>javax.xml.bind.util</package>
                <package>javax.xml.stream</package>
                <package>javax.xml.stream.events</package>
                <package>javax.xml.stream.util</package>

The rest two jar files will be left in JAXB implementation module.
Comment 1 Milan Kuchtiak 2009-06-03 17:22:53 UTC
The similar split was already done with JAX-WS library.
Comment 2 Milan Kuchtiak 2009-09-30 15:15:51 UTC
This "task" was implemented already.

See :
module "org.netbeans.modules.xml.jaxb.api" (xml.jaxb.api)
and
module "org.netbeans.libs.jaxb" (libs.jaxb)