[ 
https://issues.apache.org/jira/browse/XERCESJ-1654?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16774022#comment-16774022
 ] 

Philipp Nanz edited comment on XERCESJ-1654 at 2/21/19 12:22 PM:
-----------------------------------------------------------------

It would be nice if Apache Xerces would implement the properties defined in 
JAXP 1.5, see [https://openjdk.java.net/jeps/185] for details. It is super 
confusing that the JDK Xerces fork understands these switches, while the Apache 
Xerces does not.

My biggest concern here is that lots of people set the {{SECURE_PROCESSING}} 
feature because tools like SonarQube tell them to do so, in order to prevent 
XXE attacks. But this really gives them a false sense of security, because as 
soon as the Apache Xerces library is on the classpath, the switch will not have 
the desired effect anymore.


was (Author: philippn):
It would be nice if Apache Xerces would implement the properties defined in 
JAXP 1.5, see [https://openjdk.java.net/jeps/185] for details. It is super 
confusing that the JDK Xerces fork understands these switches, while the Apache 
Xerces does not.

My biggest concern here is that lots of people set the {{SECURE_PROCESSING}} 
feature because tools like Sonar tell them to do so, in order to prevent XXE 
attacks. But this really gives them a false sense of security, because as soon 
as the Apache Xerces library is on the classpath, the switch will not have the 
desired effect anymore.

> Add support for properties set by JAXP in the JDK (secure-processing, 
> accessExternalDTD and  entityExpansionLimit)
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: XERCESJ-1654
>                 URL: https://issues.apache.org/jira/browse/XERCESJ-1654
>             Project: Xerces2-J
>          Issue Type: New Feature
>    Affects Versions: 2.11.0
>         Environment: Problem noticed with:
> * jdk1.7.0_71.jdk
> * jdk1.8.0_25.jdk
>            Reporter: Vincent Massol
>            Priority: Major
>
> I have tons of the following warnings in my console when doing an XSLT 
> transformation:
> {noformat}
> Warning:  org.apache.xerces.parsers.SAXParser: Feature 
> 'http://javax.xml.XMLConstants/feature/secure-processing' is not recognized.
> Warning:  org.apache.xerces.parsers.SAXParser: Property 
> 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized.
> Warning:  org.apache.xerces.parsers.SAXParser: Property 
> 'http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not 
> recognized.
> {noformat}
> Code:
> {code}
>     /**
>      * Parse and pretty pint a XML content.
>      *
>      * @param content the XML content to format
>      * @return the formated version of the passed XML content
>      * @throws TransformerFactoryConfigurationError when failing to create a
>      *             {@link TransformerFactoryConfigurationError}
>      * @throws TransformerException when failing to transform the content
>      * @since 5.2M1
>      */
>     public static String formatXMLContent(String content) throws 
> TransformerFactoryConfigurationError,
>         TransformerException
>     {
>         Transformer transformer = 
> TransformerFactory.newInstance().newTransformer();
>         transformer.setOutputProperty(OutputKeys.INDENT, "yes");
>         
> transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount";, 
> "2");
>         StreamResult result = new StreamResult(new StringWriter());
>         StreamSource source = new StreamSource(new StringReader(content));
>         transformer.transform(source, result);
>         return result.getWriter().toString();
>     }
> {code}
> According to what I read at https://issues.apache.org/jira/browse/RAT-158 and 
> at http://docs.oracle.com/javase/tutorial/jaxp/limits/limits.html this seems 
> to have been caused by some changes introduced in the JDK and that XercesJ 
> doesn't support yet.
> Thus this issue is about adding support for them.
> Thanks!



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscr...@xerces.apache.org
For additional commands, e-mail: j-dev-h...@xerces.apache.org

Reply via email to