[ https://issues.apache.org/jira/browse/JENA-878?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14301237#comment-14301237 ]
Andy Seaborne edited comment on JENA-878 at 2/2/15 3:38 PM: ------------------------------------------------------------ Jena uses Xerces dv and below in the datatype code for XSD validation. was (Author: andy.seaborne): Jena uses Xerces vd and below in the datatype code for XSD validation. > Avoid dependencies on xerces.impl > --------------------------------- > > Key: JENA-878 > URL: https://issues.apache.org/jira/browse/JENA-878 > Project: Apache Jena > Issue Type: Task > Components: Jena > Affects Versions: Jena 2.13.0 > Reporter: Stian Soiland-Reyes > Priority: Minor > > Building jena-osgi complains about xerces.impl dependencies: > > [WARNING] Bundle org.apache.jena:jena-osgi:bundle:2.12.2-SNAPSHOT : Unused > > Private-Package instructions, no such package(s) on the class path: [!*] > > [WARNING] Bundle org.apache.jena:jena-osgi:bundle:2.12.2-SNAPSHOT : Export > > com.hp.hpl.jena.datatypes.xsd, has 1, private references > > [org.apache.xerces.impl.dv], > {code} > stain@biggie-utopic:~/src/jena/jena-core/src/main/java/com/hp/hpl/jena/datatypes$ > grep -r xerces.*impl . > ./xsd/XSDDatatype.java:import org.apache.xerces.impl.dv.* ; > ./xsd/XSDDatatype.java:import org.apache.xerces.impl.dv.util.Base64 ; > ./xsd/XSDDatatype.java:import org.apache.xerces.impl.dv.util.HexBin ; > ./xsd/XSDDatatype.java:import org.apache.xerces.impl.dv.xs.DecimalDV ; > ./xsd/XSDDatatype.java:import org.apache.xerces.impl.dv.xs.XSSimpleTypeDecl ; > ./xsd/XSDDatatype.java:import > org.apache.xerces.impl.validation.ValidationState ; > ./xsd/XSDhexBinary.java:import org.apache.xerces.impl.dv.util.HexBin ; > ./xsd/XSDbase64Binary.java:import org.apache.xerces.impl.dv.util.Base64 ; > ./xsd/impl/XSDGenericType.java:import org.apache.xerces.impl.dv.XSSimpleType; > {code} > It is not good style to depend on *.impl of a package - it is liable to fall > over at some point. jena-osgi complains, but works in this particular case, > because xercesImpl is shadowed in. > Some/all of these (base64) are available through more official packages - > org.apache.commons.codec.binary.Base64 comes to mind. > https://commons.apache.org/proper/commons-codec/apidocs/org/apache/commons/codec/binary/Base64.html > https://commons.apache.org/proper/commons-codec/apidocs/org/apache/commons/codec/binary/Hex.html > So this task suggests to replace these dependencies with commons-codec > versions. Remember to add commons-codec to jena-osgi as well! -- This message was sent by Atlassian JIRA (v6.3.4#6332)