GWT中 通过RPC方式,post提交 j_username,j_password。
String url = GWT.getHostPageBaseURL()+"j_spring_security_check";
RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, URL.encode(url));
rb.setTimeoutMillis(50000);
rb.setHeader("Content-Type", "application/x-www-form-urlencoded");
String form = "j_username="+userName.getValue()+"&j_password="+password.getValue();
try {
Request request = rb.sendRequest(form, new RequestCallback() {
public void onError(Request req, Throwable exception) {
GWT.log("认证加载失败");
MessageBox.alert(
i18N.loginError(),
i18N.serviceError() + " : "
null);
}
@Override
public void onResponseReceived(Request request,Response response) {
if (response.getStatusCode() == Response.SC_UNAUTHORIZED) {
GWT.log("认证失败"+response.getStatusText());
MessageBox.alert(i18N.loginFailed(),i18N.nameOrPWDError(), null);
} else if (response.getStatusCode() == Response.SC_OK) {
GWT.log("认证成功"+response.getStatusText());
response.getStatusText();
LoginDialog.this.fireEvent(loginCheck);
} else {GWT.log("非认证信息"+response.getStatusText());
}
}
});
} catch (RequestException e) {}
重写认证成功,失败接口。GWTAuthenticationFailureHandler implements AuthenticationFailureHandler
logger.debug("Authentication Failed: " + "认证失败");
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Authentication Failed: " + exception.getMessage());
GWTAuthenticationSuccessHandler implements AuthenticationSuccessHandler
logger.debug("Authentication successful");
response.sendError(HttpServletResponse.SC_OK,authentication.getName());
UsernamePasswordAuthenticationFilter
配置applicationContext-security.xml文件。
配置成功认证,失败认证处理类。
GWTAuthenticationSuccessHandler
GWTAuthenticationFailureHandler
自定义filter ValidateCodeUsernamePasswordAuthenticationFilter
<custom-filter ref="validateCodeAuthenticationFilter" position="FORM_LOGIN_FILTER" />
分享到:
相关推荐
EXT-GWT的API和DOC文档对于学习和使用EXT-GWT至关重要,它们详尽地介绍了各个组件的用法和功能,帮助开发者了解如何在项目中集成和使用这些组件。 接下来,“Gwt-Ext基础-中级-进阶”这部分教程可能涵盖了从基础到...
Gwt中文手册,GWt入门Gwt中文手册,GWt入门Gwt中文手册,GWt入门
3. **Widget库**:GWT提供了一套丰富的Widget库,包括按钮、文本框、面板等基本UI组件,以及表单、日期选择器等复杂控件,这些都是用Java封装的,可以直接在Java代码中使用。 4. **事件处理**:GWT中的事件模型基于...
EXT-GWT2.0.1+API+DOC Gwt-Ext基础-中级-进阶GWT中文教程
在GWT(Google Web Toolkit)开发中,XMLHttpRequest(XHR)是实现客户端与服务器间异步数据交换的关键技术。GWT提供了对XHR的封装,使得开发者可以方便地使用JavaScript的XMLHttpRequest对象,而无需直接接触底层的...
3. **Java到JavaScript编译**:GWT的编译过程将Java源代码转化为优化的JavaScript,这个过程叫做"编译优化",分为开发模式和生产模式两种。 4. **UI设计**:GWT提供了Widget库,包含许多常见的UI元素,如按钮、...
通过阅读博文(链接已给出,但在这里无法直接访问),你可能会了解到如何解析和理解GWT的内部工作原理,以及如何利用GWT的相关工具提升开发效率。例如,可能是关于性能优化、调试工具的使用,或者是GWT与其他工具...
3. **设计视图**:提供图形化的用户界面设计工具,方便开发者直观地布局和设计GWT应用的用户界面。 4. **本地与模拟运行**:插件内置了GWT开发者服务器,可以快速启动本地服务器运行应用,并支持模拟不同浏览器的...
在GWT(Google Web Toolkit)中,实现一个简单的树状菜单是常见的需求,尤其是在构建具有层级结构的数据展示或导航功能的Web应用时。GWT提供了一套完整的UI组件库,其中包括Tree和TreeItem类,可以帮助我们轻松创建...
3. **安装GWT插件**:在Eclipse中,通过Help > Install New Software,选择GWT插件的更新站点进行安装。 4. **创建GWT项目**:在Eclipse中新建一个GWT项目,设置项目的名称、包结构和GWT版本。 5. **配置.gwt.xml...
这本书《GWT 揭秘》显然深入探讨了GWT的内部机制和使用技巧,通过源代码来帮助读者更好地理解和应用这个强大的工具。源代码通常包含示例项目、实用模块和关键功能的实现,以便读者可以动手实践。 GWT的核心概念是...
在本文中,我们将深入探讨GWT(Google Web Toolkit)中的各种Panel组件,这些组件是构建交互式Web应用程序的基础。GWT是一种开源的Java框架,它允许开发者使用Java编写客户端代码,然后自动编译为优化的JavaScript,...
- 在SmartGWT 1.3版本中,可能会包含一些新的特性、改进和修复的bug,具体信息需要查看该版本的发布说明。 - 通常,新版本会提升性能、增加新的组件或者增强现有组件的功能,可能还包括对GWT新版本的支持。 3. **...
在这个"smartgwt最新版本GWT的DEMO"中,我们可以深入学习SmartGWT如何与GWT结合,创建功能强大的Web应用。 Google Web Toolkit (GWT) 是一个由Google开发的开放源代码Java SDK,它允许开发者使用Java语言编写客户端...
10. **异步通信(Remote Procedure Call, RPC)**:GWT中的RPC机制允许客户端和服务器之间的数据交换,学习如何创建服务端接口和服务实现,以及客户端调用这些服务。 11. **RSSReader应用**:这个项目的具体实现,...