`

Socket accept failed

    博客分类:
  • Java
阅读更多

  一同事在win7下使用无线网,启动tomcat后,与数据库连接时报如下错误:(tomcat 1.6,sqlserver 2008 r2, jdk 1.6)

严重: Socket accept failed
java.net.SocketException: select failed
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
	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:352)
	at java.lang.Thread.run(Thread.java:619)
2011-8-31 15:36:59 org.apache.tomcat.util.net.JIoEndpoint$Acceptor run

 在网上搜了一下,说是与ipv6 有冲突建议把ipv6 卸掉,觉得这种方法欠妥. 又搜了一下,说是设定tomcat参数,奏效记录下:

在tomcat bin 目录下找到 catalina.bat 文件,用文本编辑器打开,找到这一行:

set JAVA_OPTS=

 

在其后添加:  (注意各参数用空格隔开)

-Djava.net.preferIPv4Stack=true

再启动后,OK

 

以上步骤简单来说: 就是让jvm使用 ipv4,不使用ipv6 .  总之,还是与ipv6冲突,不知是否是版本问题.

分享到:
评论

相关推荐

    Apache服务器错误问题

    Apache服务器错误问题 Apache服务器错误问题 Apache服务器错误问题

    Tomcat问题

    在eclipse中安装了Tomcat插件,启动Tomcat时出现以下问题: 严重: Socket accept failed,解决办法

    网络编程socket之accept函数

    ### 网络编程Socket之accept函数详解 #### 一、引言 在网络编程中,服务器端接收客户端连接请求是一个非常关键的过程。这一过程通常由`accept`函数完成。`accept`函数的主要职责是从内核中取出已建立的客户端连接,...

    访问应用很慢,访问Nginx时,报错:accept() failed (24 Too many open files).docx

    "解决 Nginx 访问慢和 accept() failed 错误的方法" 在本文中,我们将讨论 Nginx 访问慢和 accept() failed 错误的解决方案。这个问题通常是由于 Nginx 的连接数超过了系统设定的最大值造成的。下面是解决这个问题...

    运行php socket

    $client_socket = socket_accept($socket); if ($client_socket !== false) { echo "Accepted connection from client.\n"; // 接收并处理客户端数据 $data = socket_read($client_socket, 1024); echo ...

    php5 实现socket 通信

    - `socket_accept($socket)` 接受客户端的连接请求,并返回一个新的 Socket 连接句柄 `$connection`。 2. **发送数据:** ```php if ($buffer != "") { socket_write($connection, $buffer . "\r\n"); } else...

    基于windows的socket代码,TCP/IP服务器,客户端建立

    当有客户端连接时,`accept`函数会返回一个新的socket用于与客户端通信。示例代码如下: ```c #include #include int main() { WSADATA wsaData; SOCKET serverSocket, clientSocket; SOCKADDR_IN serverAddr...

    C++ socket实例

    - **接受连接**:使用`accept`函数等待并接收客户端的连接请求,返回一个新的Socket用于与客户端通信。 - **数据交互**:通过`recv`和`send`函数读取客户端发送的数据,并将其回传给客户端。 - **清理资源**:最后...

    python C socket 编程

    而在C语言中,Socket编程涉及`<sys/socket.h>`头文件,使用`socket()`, `bind()`, `listen()`, `accept()`, `recv()`, 和 `send()`等函数。下面是一个C语言的简单服务器示例: ```c #include #include #include ...

    利用Socket实现双机通信C++

    SOCKET clientSocket = accept(serverSocket, (SOCKADDR*)&clientAddr, &clientAddrSize); if (clientSocket == INVALID_SOCKET) { std::cerr << "Failed to accept connection." ; closesocket(serverSocket); ...

    socket编程.doc

    int client_socket = accept(server_socket, NULL, NULL); if (client_socket ) { perror("accept failed"); exit(EXIT_FAILURE); } ``` 5. **发送/接收数据**:使用`send()`或`recv()`函数通过Socket发送和...

    linux socket programming

    if ((new_socket = accept(server_fd, (struct sockaddr *)&address, (socklen_t*)&addrlen)) ) { perror("accept"); exit(EXIT_FAILURE); } // 发送数据 send(new_socket, hello, strlen(hello), 0); ...

    Linux Socket函数调用的基础实例

    4. **接受连接**:当有客户端请求连接时,`accept()`函数会返回一个新的Socket描述符,用于处理客户端的连接。 5. **数据传输**:使用`read()`和`write()`或`send()`和`recv()`函数进行数据的发送和接收。 6. **关闭...

    socket网络编程实验指导

    if ((new_socket = accept(server_fd, (struct sockaddr *)&address, (socklen_t*)&addrlen))) { perror("accept"); exit(EXIT_FAILURE); } // 处理连接 // ... return 0; } ``` 通过上述分析可以看出,...

    Socket编程实例

    - 函数原型为`SOCKET accept(SOCKET s, struct sockaddr *addr, int *addrlen);` - 参数解释: - `s`是监听状态的Socket句柄。 - `addr`指向结构体的指针,用于保存客户端的地址信息。 - `addrlen`是地址信息的...

    c语言编程-socket基础

    printf("accept failed with error: %d\n", WSAGetLastError()); closesocket(ListenSocket); WSACleanup(); return 1; } // 与客户端通信... // 关闭Socket closesocket(ClientSocket); closesocket...

    新编C语言SOCKET编程指南.pdf

    if ((new_socket = accept(server_socket, (struct sockaddr *)&address, (socklen_t*)&addrlen))) { perror("accept"); exit(EXIT_FAILURE); } valread = read( new_socket , buffer, 1024); printf("%s\n",...

    C++网络编程socket编程

    std::cerr << "Failed to accept connection" ; return 1; } // 发送数据 const char* message = "Hello, client!"; if (send(client_sockfd, message, strlen(message), 0) == -1) { std::cerr << "Failed ...

    linux 下socket客户端开发

    6. **accept()函数**:服务器使用,接收客户端的连接请求,返回一个新的Socket描述符用于通信。 7. **send()/recv()函数**:发送和接收数据。 8. **close()函数**:关闭Socket。 **三、Fork进程技术** Fork是Unix/...

    实战linux socket编程.pdf

    if ((new_socket = accept(server_fd, (struct sockaddr *)&address, (socklen_t*)&addrlen)) ) { perror("accept"); exit(EXIT_FAILURE); } send(new_socket, hello, strlen(hello), 0); printf("Hello ...

Global site tag (gtag.js) - Google Analytics