Java JPA代理问题

时间:2012-12-03 12:08:58

标签: java jpa eclipselink

我在我的java应用程序中使用JPA(EclipseLink impl)。如果在系统级别没有配置代理但是在系统级别配置代理时,应用程序可以找到,则应用程序将失败

EntityManager entityManager = emf.createEntityManager();

并抛出以下异常

Caused by: java.net.SocketException: Unknown proxy type : null
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:341)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:395)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2137)
at java.net.Socket.connect(Socket.java:579)
... 24 more
at java.net.Socket.connect(Socket.java:528)

Caused by: java.net.SocketException: Unknown proxy type : null
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:241)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:395)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at java.net.Socket.connect(Socket.java:579)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:290)
... 25 more
at java.net.Socket.connect(Socket.java:528)

at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:241)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:290)
... 25 more

我怀疑它正试图通过配置代理访问localhost上的mysql数据库,从而失败。但是在系统级代理配置中,我将以下IP配置为忽略主机

127.0.0.1 localhost

并使用以下jdbc url

<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/clharvester" />

1 个答案:

答案 0 :(得分:0)

当您使用代理时,您必须使用服务器机器的真实IP地址连接到数据库。