一个dwr服务器推送消息错误

oh_Boo 2011-07-06 10:11:26
一个web聊天页面,在公司电脑XP 本地测试没问题. 发送消息频率很快也没错,但是回到家系统是WIN7.发送快了就会弹出提示failed to read input. 这个也和网速有关?
贴下我的服务器类:


public class ChatService {
public static List<User> users = new ArrayList<User>();

public String registerUser(String name, HttpServletRequest request) {
User user = new User();
user.setName(name);
user.setId(request.getSession().getId());
WebContextFactory.get().getScriptSession().setAttribute("user", user);
users.add(user);

updateUsers();

return user.getId();
}

public void updateUsers() {
Browser.withAllSessions(new Runnable() {
public void run() {
Util.removeAllOptions("users");
Util.addOptions("users", users, "name");
Util.removeAllOptions("receiver");
Util.addOptions("receiver", users, "name");
}
});
}

public void send(final String sender, final String receiverid, final String msg) {

Browser.withCurrentPageFiltered(
new ScriptSessionFilter() {
public boolean match(ScriptSession session) {
if (session.getAttribute("user") == null)
return false;
else
return ((User)session.getAttribute("user")).getName().equals(receiverid);
}
},
new Runnable() {
public void run() {
Collection<ScriptSession> colls = Browser.getTargetSessions();
for (ScriptSession scriptSession : colls) {
ScriptBuffer script = new ScriptBuffer();
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
String date = format.format(new Date());
System.out.println(msg);
String message = "<p><p style='color:blue'>"+sender+"  "+date +"</p>" + msg+"</p>";
script.appendScript("test(");
script.appendData(message);
script.appendScript(",");
script.appendData(receiverid);
script.appendScript(");");
scriptSession.addScript(script);
}
}
}
);
}

public void list(){
Browser.withAllSessions(new Runnable() {
public void run() {
Collection<ScriptSession> colls = Browser.getTargetSessions();
for (ScriptSession scriptSession : colls) {
System.out.println(scriptSession.getId());
}
}
});
}
}




大家看看能帮忙解决下不,或者原因看看.
...全文
88 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
oh_Boo 2011-07-06
  • 打赏
  • 举报
回复
肿么没人有来帮忙瞧瞧= =||

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧