2014-03-11 1 views
1

Я хочу пропустить проверку DTD, поскольку у меня нет подключения к Интернету. Возможно ли реализовать это в java.XML-парсер java skip dtd validation

Мой код:

file = new File(filepath); 

      // Create instance of DocumentBuilderFactory 
      factory = DocumentBuilderFactory.newInstance(); 

      // Get the DocumentBuilder 
      docBuilder = factory.newDocumentBuilder(); 

      // Using existing XML Document 

      doc = docBuilder.parse(file); 

Моя ошибка это, и я знаю причину этой ошибки.

a.net.UnknownHostException: www.jboss.org 
     at java.net.PlainSocketImpl.connect(Unknown Source) 
     at java.net.Socket.connect(Unknown Source) 
     at java.net.Socket.connect(Unknown Source) 
     at sun.net.NetworkClient.doConnect(Unknown Source) 
     at sun.net.www.http.HttpClient.openServer(Unknown Source) 
     at sun.net.www.http.HttpClient.openServer(Unknown Source) 
     at sun.net.www.http.HttpClient.<init>(Unknown Source) 
     at sun.net.www.http.HttpClient.New(Unknown Source) 
     at sun.net.www.http.HttpClient.New(Unknown Source) 
     at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(UnknownSource) 
     at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) 
     at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) 
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source) 
     at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 

ответ

0

Один вопиющий хак бы написать собственный java.io.InputStream расширение, которое просто удаляет ссылку на DTD, прежде чем анализатор видит.

+0

Спасибо, попробуем. – user1633263

 Смежные вопросы

  • Нет связанных вопросов^_^