Skip to content

Commit f062c64

Browse files
enable secure XML processing
1 parent fa2765c commit f062c64

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

sqldev/src/main/java/org/utplsql/sqldev/dal/RealtimeReporterDao.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.util.List;
2727
import java.util.logging.Logger;
2828

29+
import javax.xml.XMLConstants;
2930
import javax.xml.parsers.DocumentBuilder;
3031
import javax.xml.parsers.DocumentBuilderFactory;
3132
import javax.xml.parsers.ParserConfigurationException;
@@ -145,7 +146,9 @@ public Void doInCallableStatement(final CallableStatement cs) throws SQLExceptio
145146
private RealtimeReporterEvent convert(final String itemType, final String text) {
146147
logger.fine(() -> "\n---- " + itemType + " ----\n" + text);
147148
try {
148-
final DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
149+
final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
150+
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, Boolean.TRUE);
151+
final DocumentBuilder docBuilder = factory.newDocumentBuilder();
149152
final Document doc = docBuilder.parse(new InputSource(new StringReader(text)));
150153
RealtimeReporterEvent event = null;
151154
if ("pre-run".equals(itemType)) {

0 commit comments

Comments
 (0)