网上搜的,解决方案不是原创。总结语言是自己写的。
启动tomcat报错:
2012-4-23 16:27:41 org.apache.tomcat.util.net.JIoEndpoint$Acceptor run
java.net.SocketException: select failed
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
at java.net.ServerSocket.implAccept(ServerSocket.java:453)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:61)
at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:310)
at java.lang.Thread.run(Thread.java:619)
使用了加速器,加速器在lsp中增加了dll映射。对应dll不支持ipv6协议导致。
解决方案:
一:使用工具删除lsp中映射。
二:启动tomcat增加
-Djava.net.preferIPv4Stack=true
同理,使用soket相关的类,按照上述方法即可解决问题。
根本解决方案应是加速器软件厂商升级dll文件,增加支持ipv6协议dll