@@ -989,7 +989,7 @@ private static Object stringToNumber(String number) {
989989 localValue = Double .valueOf (number );
990990 }
991991 } else {
992- if (number .length () > 20 ) {
992+ if (number .length () > 19 ) {
993993 localValue = new java .math .BigInteger (number );
994994 } else {
995995 localValue = Long .valueOf (number );
@@ -1280,7 +1280,7 @@ public static Object fromXml(final String xml, final FromType fromType) {
12801280 return null ;
12811281 }
12821282 try {
1283- org .w3c .dom .Document document = createDocument (xml );
1283+ org .w3c .dom .Document document = Document . createDocument (xml );
12841284 final Object result = createMap (document , new BiFunction <Object , Set <String >, String >() {
12851285 public String apply (Object object , Set <String > namespaces ) {
12861286 return String .valueOf (object );
@@ -1345,25 +1345,33 @@ public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) {
13451345 }
13461346 }
13471347
1348- private static org .w3c .dom .Document createDocument (final String xml )
1349- throws java .io .IOException , javax .xml .parsers .ParserConfigurationException , org .xml .sax .SAXException {
1350- final javax .xml .parsers .DocumentBuilderFactory factory =
1351- javax .xml .parsers .DocumentBuilderFactory .newInstance ();
1352- factory .setNamespaceAware (true );
1353- factory .setFeature (javax .xml .XMLConstants .FEATURE_SECURE_PROCESSING , true );
1354- final javax .xml .parsers .DocumentBuilder builder = factory .newDocumentBuilder ();
1355- builder .setErrorHandler (new org .xml .sax .helpers .DefaultHandler ());
1356- builder .setEntityResolver (new MyEntityResolver ());
1357- return builder .parse (new org .xml .sax .InputSource (new java .io .StringReader (xml )));
1358- }
1359-
13601348 private static class Document {
1349+ private static org .w3c .dom .Document createDocument (final String xml )
1350+ throws java .io .IOException , javax .xml .parsers .ParserConfigurationException , org .xml .sax .SAXException {
1351+ final javax .xml .parsers .DocumentBuilderFactory factory =
1352+ javax .xml .parsers .DocumentBuilderFactory .newInstance ();
1353+ factory .setNamespaceAware (true );
1354+ try {
1355+ factory .setFeature (javax .xml .XMLConstants .FEATURE_SECURE_PROCESSING , true );
1356+ } catch (javax .xml .parsers .ParserConfigurationException ignored ) {
1357+ // ignored
1358+ }
1359+ final javax .xml .parsers .DocumentBuilder builder = factory .newDocumentBuilder ();
1360+ builder .setErrorHandler (new org .xml .sax .helpers .DefaultHandler ());
1361+ builder .setEntityResolver (new MyEntityResolver ());
1362+ return builder .parse (new org .xml .sax .InputSource (new java .io .StringReader (xml )));
1363+ }
1364+
13611365 private static org .w3c .dom .Document createDocument () {
13621366 try {
13631367 final javax .xml .parsers .DocumentBuilderFactory factory =
13641368 javax .xml .parsers .DocumentBuilderFactory .newInstance ();
13651369 factory .setNamespaceAware (true );
1366- factory .setFeature (javax .xml .XMLConstants .FEATURE_SECURE_PROCESSING , true );
1370+ try {
1371+ factory .setFeature (javax .xml .XMLConstants .FEATURE_SECURE_PROCESSING , true );
1372+ } catch (javax .xml .parsers .ParserConfigurationException ignored ) {
1373+ // ignored
1374+ }
13671375 final javax .xml .parsers .DocumentBuilder builder = factory .newDocumentBuilder ();
13681376 return builder .newDocument ();
13691377 } catch (javax .xml .parsers .ParserConfigurationException ex ) {
@@ -1374,7 +1382,7 @@ private static org.w3c.dom.Document createDocument() {
13741382
13751383 public static Object fromXmlMakeArrays (final String xml ) {
13761384 try {
1377- org .w3c .dom .Document document = createDocument (xml );
1385+ org .w3c .dom .Document document = Document . createDocument (xml );
13781386 final Object result = createMap (document , new BiFunction <Object , Set <String >, String >() {
13791387 public String apply (Object object , Set <String > namespaces ) {
13801388 return String .valueOf (object );
@@ -1397,7 +1405,7 @@ public Object apply(Object object) {
13971405 public static Object fromXmlWithElementMapper (final String xml ,
13981406 final BiFunction <Object , Set <String >, String > elementMapper ) {
13991407 try {
1400- org .w3c .dom .Document document = createDocument (xml );
1408+ org .w3c .dom .Document document = Document . createDocument (xml );
14011409 final Object result = createMap (document , elementMapper , new Function <Object , Object >() {
14021410 public Object apply (Object object ) {
14031411 return object ;
0 commit comments