Java GWT KeyUpEvent在服务器上不工作
我在GWT上有这样的代码:Java GWT KeyUpEvent在服务器上不工作,java,google-app-engine,gwt,Java,Google App Engine,Gwt,我在GWT上有这样的代码: @UiHandler("playerSearchTextBox") public void onSearchPlayers(KeyUpEvent event) { String searchText = playerSearchTextBox.getText(); GWT.log("search text :: " + searchText); List<Profile> players = new ArrayList<
@UiHandler("playerSearchTextBox")
public void onSearchPlayers(KeyUpEvent event) {
String searchText = playerSearchTextBox.getText();
GWT.log("search text :: " + searchText);
List<Profile> players = new ArrayList<Profile>();
for (Profile profile : originalPlayerList) {
if (profile.getPlayerName().toLowerCase().contains(searchText.toLowerCase())) {
players.add(profile);
GWT.log("PLAYER :: " + profile);
}
}
playersCellList.setRowCount(0);
playersCellList.setRowData(players);
GWT.log("players :: " + players);
}
@UiHandler(“playerSearchTextBox”)
搜索播放器上的公共无效(KeyUpEvent事件){
String searchText=playerSearchTextBox.getText();
log(“搜索文本::”+搜索文本);
List players=new ArrayList();
用于(配置文件:originalPlayerList){
if(profile.getPlayerName().toLowerCase().contains(searchText.toLowerCase())){
添加(个人资料);
log(“玩家::”+profile);
}
}
PlayerCellList.setRowCount(0);
PlayerCellList.setRowData(玩家);
日志(“玩家::”+玩家);
}
但当我输入时,它似乎并没有调用生产服务器,它也在开发中工作。我使用SDM。我发现答案是KeyUpEvent不是跨浏览器的,而且我知道它在很久以前就起作用了
有解决办法吗
UPD
我使用GAE作为生产服务器
UPD 2
生成的js有:
function $onSearchPlayers(this$static){
var players, profile, profile$iterator, searchText, stackIndex;
$stack_0[stackIndex = ++$stackDepth_0] = $onSearchPlayers;
searchText = $getText_0(($location_0[stackIndex] = 'CheckersViewImpl.java:' + '119' , this$static).playerSearchTextBox);
players = ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '121' , new ArrayList);
for ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '122' , profile$iterator = new ArrayList$1(($tmp = ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '122' , this$static).originalPlayerList , $location_0[stackIndex] = 'ArrayList.java:' + '141' , $tmp)); ($location_0[stackIndex] = 'ArrayList.java:' + '146' , ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '122' , profile$iterator).i) < ($location_0[stackIndex] = 'ArrayList.java:' + '146' , ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '122' , profile$iterator).this$01).array.length;) {
profile = castTo($next_7(($location_0[stackIndex] = 'CheckersViewImpl.java:' + '122' , profile$iterator)), 108);
indexOf_1(toLowerCase(($tmp = ($location_0[stackIndex] = 'Profile.java:' + '107' , ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '123' , profile).playerName) , $location_0[stackIndex] = 'String.java:' + '738' , $tmp)), ($tmp = ($location_0[stackIndex] = 'String.java:' + '741' , $clinit_String() , ($tmp = ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '123' , searchText) , $location_0[stackIndex] = 'String.java:' + '742' , $tmp).toLowerCase()) , $location_0[stackIndex] = 'String.java:' + '450' , $tmp)) != -1 && ($location_0[stackIndex] = 'ArrayList.java:' + '77' , ($location_0[stackIndex] = 'ArrayList.java:' + '77' , ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '124' , players).array)[($location_0[stackIndex] = 'ArrayList.java:' + '77' , ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '124' , players).array).length] = ($location_0[stackIndex] = 'CheckersViewImpl.java:' + '124' , profile));
}
$setRowCount(($location_0[stackIndex] = 'CheckersViewImpl.java:' + '129' , this$static).playersCellList, 0);
$setRowData(($location_0[stackIndex] = 'CheckersViewImpl.java:' + '130' , this$static).playersCellList, players);
$stackDepth_0 = stackIndex - 1;
}
函数$onSearchPlayer(此$static){
var播放器、配置文件、配置文件$iterator、searchText、stackIndex;
$stack_0[stackIndex=+$stackDepth_0]=$OnSearchPlayer;
searchText=$getText_0($location_0[stackIndex]='CheckersViewImpl.java:'+'119',此$static)。playerSearchTextBox);
players=($location_0[stackIndex]='CheckersViewImpl.java:'+'121',新数组列表);
对于($tmp=($location_0[stackIndex]='CheckersViewImpl.java:'+'122',profile$iterator=new ArrayList$1)($tmp=($location_0[stackIndex]='CheckersViewImpl.java:'+'122',this$static)。originalPlayerList,$location_0[stackIndex]='ArrayList.java:'+'141',$tmp));($location_0[stackIndex]='ArrayList.java:'+'146',($location_0[stackIndex]='CheckersViewImpl.java:'+'122',profile$iterator.i)<($location\u 0[stackIndex]='ArrayList.java:'+'146',($location\u 0[stackIndex]='CheckersViewImpl.java:'+'122',profile$iterator.this$01)。array.length;){
profile=castTo($next_7($location_0[stackIndex]='CheckersViewImpl.java:'+'122',profile$iterator)),108);
索引of_1(小写($tmp=($location_0[stackIndex]='Profile.java:'+'107',($location_0[stackIndex]='CheckersViewImpl.java:'+'123',Profile.playerName),$location_0[stackIndex]='String.java:'+'738',$tmp=($location_0[stackIndex]='String.java:'+'741',$clinit_String(),($tmp='location_0[stackIndex]='CheckersViewImpl.java:'+'123',searchText),$location_0[stackIndex]='String.java:'+'742',$tmp.toLowerCase(),$location_0[stackIndex]='String.java:'+'450',$tmp))!=-1&($location_0[stackIndex]='ArrayList.java:'+'77',($location_0[stackIndex]='ArrayList.java:''77',($location_0[stackIndex]='CheckersViewImpl.java:'+'124',players).array[($location_0[stackIndex]='ArrayList.java:'+'77',($location_0[stackIndex]='CheckersViewImpl.java:'+'124',players.array.).length]=($location_0[stackIndex]='CheckersViewImpl.java:'+'124',profile));
}
$setRowCount($location_0[stackIndex]='checkerViewImpl.java:'+'129',此$static)。PlayerCellList,0);
$setRowData($location_0[stackIndex]='checkerViewImpl.java:'+'130',此$static)。PlayerCellList,玩家;
$stackDepth_0=stackIndex-1;
}
GWT.log仅在开发中有效。当你说“不工作”的时候,你需要更具体一些。我建议它不能被调用,因为玩家列表没有更新。当我在开发模式下输入时,生产中不会发生任何事情。那么,在浏览器开发工具中您看到了哪些错误?我看到了日志输出和筛选的播放器列表。而且,我在生产中看不到任何东西,无论是日志还是筛选的播放器列表。再说一次,您在生产中的浏览器开发工具中看到了什么?