где именно Hibernate использует HttpURLConnection - PullRequest
0 голосов
/ 29 мая 2018

Я искал везде, но не смог найти, где именно Hibernate использует HttpURLConnection.Теоретически я думаю, что он использует для своего внутреннего соединения.

Моя проблема в том, что у меня есть Java-агент, который использует HttpURLConnection для установки заголовка при каждом вызове.Я хочу использовать этот агент с моим приложением Hibernate, но он не работает.Когда я не использую свой Java-агент, он работает отлично.Даже если агент JAVA изменен для печати только некоторых кодов, который работает нормально.Но когда я пытаюсь добавить к нему заголовок, он не может дать исключение -

Exception in thread "main" org.hibernate.HibernateException: Could not parse configuration: hibernate.cfg.xml
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2163)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2075)
    at com.javapapers.App.test(App.java:101)
    at com.javapapers.App.main(App.java:19)
Caused by: org.dom4j.DocumentException: null Nested exception: null
    at org.dom4j.io.SAXReader.read(SAXReader.java:484)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2155)
    ... 3 more

Я искал и пытался полностью избавиться от этого, но не смог.

Агент JAVAКод к инструменту:

ctConstructor.insertAfter("System.out.println(10);"
+ "setRequestProperty(\"testHeader\",\"NewHeader\");");

1 Ответ

0 голосов
/ 29 мая 2018

В вашем случае hibernate может быть потянув DTD из Интернета.FYI По умолчанию DOCTYPE,

<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

Вы можете изменить XML DOCTYPE, чтобы получить DTD из classpath

<!DOCTYPE hibernate-configuration SYSTEM 
"classpath://org/hibernate/hibernate-configuration-3.0.dtd">
...