Ignore:
Timestamp:
08/10/10 14:17:18 (22 months ago)
Author:
jharrop
Message:

Utility method to getPreferredPrefix irrespective of whether using Java 6 or JAXB RI.
Use this method in JAXBElementDebug.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/docx4j/src/main/java/org/docx4j/jaxb/NamespacePrefixMapperUtils.java

    r869 r1184  
    1616        try { 
    1717                c = Class.forName("com.sun.xml.bind.marshaller.NamespacePrefixMapper"); 
    18                 return new NamespacePrefixMapper(); 
     18                return new NamespacePrefixMapper();  // JAXB Reference Implementation  
    1919        } catch (ClassNotFoundException cnfe) { 
    2020                // JAXB Reference Implementation not present 
     21                // Use Java 6 implementation 
    2122                log.info("JAXB RI (com.sun.xml.bind.marshaller.NamespacePrefixMapper) not present.  Trying Java 6 implementation."); 
    2223                try { 
     
    9697        } 
    9798         
     99        public static String getPreferredPrefix(String namespaceUri, String suggestion, boolean requirePrefix) throws JAXBException { 
     100 
     101                Object namespacePrefixMapper = getPrefixMapper(); 
     102                 
     103                if ( namespacePrefixMapper instanceof NamespacePrefixMapperSunInternal) { 
     104                        // Java 6 
     105                        return ((NamespacePrefixMapperSunInternal)namespacePrefixMapper).getPreferredPrefix(namespaceUri, suggestion, requirePrefix);  
     106                         
     107                } else if (namespacePrefixMapper instanceof NamespacePrefixMapper) { 
     108                // JAXB Reference Implementation                 
     109                        return ((NamespacePrefixMapper)namespacePrefixMapper).getPreferredPrefix(namespaceUri, suggestion, requirePrefix);  
     110                         
     111                } else { 
     112                        log.warn("Namespace prefix mapper not found!"); 
     113                        return null; 
     114                } 
     115                 
     116        } 
     117         
    98118} 
Note: See TracChangeset for help on using the changeset viewer.