0

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 db にアクセスしようとしているために失敗していると思われます。しかし、システム レベルのプロキシ構成では、次の IP を無視されたホストとして構成しました。

127.0.0.1 localhost

次のjdbc URLを使用

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

1 に答える 1

0

プロキシを使用している場合は、サーバーマシンの実際のIPアドレスを使用してデータベースに接続する必要があります。

于 2012-12-03T12:23:32.127 に答える