当我试图关闭听众时,我收到java.net.BindException: Address already in use: JVM_Bind
错误。这是我打开听众的代码。
SMPPServerSessionListener sessionListener = new SMPPServerSessionListener(newPort);
这是关闭它的代码。
public String getCloseConn() throws IOException{
System.out.println("porttt: " + newPort);
SMPPServerSessionListener sess = new SMPPServerSessionListener(newPort);
sess.close();
return "";
}
我的程序所做的是询问用户端口号并在提交时启动它。然后当用户点击"停止服务器"然后我试图关闭监听器。按钮触发getClossConn()
方法,但我收到了前面提到的错误。请帮忙。
PS :请不要苛刻我,我只是新来的:)
答案 0 :(得分:0)
你不应该打电话
SMPPServerSessionListener sess = new SMPPServerSessionListener(newPort);
希望获得现有的监听器。该语句尝试在与现有侦听器相同的端口上创建一个NEW侦听器,这会导致您看到的错误。
您应该将对现有会话的引用传递给close方法,然后关闭 。