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与其他工具...
【GWT开发者手册】是为新入职员工提供GWT技术培训的文档,旨在让无GWT背景的JAVA开发者能在短时间内掌握GWT开发。本手册基于GWT版本gwt-windows-1.3.3,适用于熟悉JAVA语言和具有J2EE三层架构开发经验的WEB应用程序...
3. **设计视图**:提供图形化的用户界面设计工具,方便开发者直观地布局和设计GWT应用的用户界面。 4. **本地与模拟运行**:插件内置了GWT开发者服务器,可以快速启动本地服务器运行应用,并支持模拟不同浏览器的...
在本资源中,我们将讨论Google Web Toolkit(GWT)的基础知识点,包括GWT的安装、配置、编码基础和客户端代码编写等方面的内容。 GWT安装和配置 在Eclipse中添加GWT插件是使用GWT开发的第一步。可以通过安装...
- **培训目标**:该手册的主要目的是对新入职员工进行GWT技术培训,使其能够在短期内掌握GWT的基本操作,以便快速投入到基于GWT的实际项目开发中。 #### 三、面向读者 - 面向熟悉Java语言并有J2EE开发经验的Web...
在GWT(Google Web Toolkit)中,实现一个简单的树状菜单是常见的需求,尤其是在构建具有层级结构的数据展示或导航功能的Web应用时。GWT提供了一套完整的UI组件库,其中包括Tree和TreeItem类,可以帮助我们轻松创建...
GWT的核心优势在于它解决了Ajax开发中的主要难题,即缺乏有效的开发工具和调试环境。通过将Java代码转换为高效的JavaScript,GWT使得开发者能够利用熟悉的Java生态系统,同时享受到Ajax带来的高度交互性和动态用户...
这本书《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应用**:这个项目的具体实现,...
首先,你需要下载GWT SDK,并在Eclipse或其他IDE中配置GWT插件。安装SDK后,创建一个新的GWT项目,包括设置模块文件.gwt.xml,定义项目的源代码路径和库依赖。 **2. 编写客户端代码** GWT的核心在于它的Java-to-...