- 浏览: 474164 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
zjxkeven:
放在自己工程上不报错,已放在服务器上就报错
java获得CPU使用率,系统内存,虚拟机内存等情况 -
wang1990cool:
能运行?我报错啊、
java获得CPU使用率,系统内存,虚拟机内存等情况 -
yue_ch:
yue_ch 写道getTotalPhysicalMemory ...
java获得CPU使用率,系统内存,虚拟机内存等情况 -
yue_ch:
getTotalPhysicalMemorySize()get ...
java获得CPU使用率,系统内存,虚拟机内存等情况 -
kjmmlzq19851226:
private RealSubject realSubject ...
代理模式,静态代理与动态代理
1.3版本前整合gwt spring,用到了第三方类,如cglib扩展类具备gwt servlet的功能,随着1.4版本的发布(发布很久了T_T '),整合有了新的方式,闲话不说,看看整合后的servlet如何调用服务:
java 代码
- /**
- * GWTRemoteServiceServlet act as a dispatch servlet for all GWT services
- *
- * in your web.xml, mapping all request /gwtrpc/ to this servlet
- *
- */
- public class GWTRemoteServiceServlet extends RemoteServiceServlet {
- private WebApplicationContext springContext;
- @Override
- public void init(ServletConfig config) throws ServletException {
- super.init(config);
- springContext = (WebApplicationContext) config
- .getServletContext()
- .getAttribute(
- WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
- if (springContext == null) {
- throw new RuntimeException(
- "Check your web.xml setting, no Spring context configured");
- }
- }
- @Override
- protected void service(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- try {
- HttpRequestContext context = new HttpRequestContext(req, resp, this
- .getServletConfig());
- HttpRequestContext.ThreadLocalHttpRequestContext.set(context);
- ServletContext servletContext = getServletContext();
- perThreadRequest.set(req);
- perThreadResponse.set(resp);
- String pathInfo = req.getPathInfo();
- if (pathInfo.startsWith("/")) {
- pathInfo = pathInfo.substring(1);
- }
- RemoteService service = (RemoteService) springContext.getBean(pathInfo);
- String requestPayload = readPayloadAsUtf8(req);
- // Let subclasses see the serialized request.
- //
- onBeforeRequestDeserialized(requestPayload);
- // Invoke the core dispatching logic, which returns the serialized
- // result.
- //
- String responsePayload = processCall(service, requestPayload);
- // Let subclasses see the serialized response.
- //
- onAfterResponseSerialized(responsePayload);
- // Write the response.
- //
- writeResponse(req, resp, responsePayload);
- } catch (Throwable e) {
- // Give a subclass a chance to either handle the exception or
- // rethrow it
- //
- doUnexpectedFailure(e);
- } finally {
- HttpRequestContext.ThreadLocalHttpRequestContext.remove();
- }
- }
- /**
- * rewrite processCall
- *
- * @param bean
- * @param payload
- * @return
- * @throws SerializationException
- */
- public String processCall(RemoteService bean, String payload)
- throws SerializationException {
- try {
- RPCRequest rpcRequest = RPC.decodeRequest(payload, bean.getClass(),
- this);
- return RPC.invokeAndEncodeResponse(bean, rpcRequest.getMethod(),
- rpcRequest.getParameters(), rpcRequest
- .getSerializationPolicy());
- } catch (IncompatibleRemoteServiceException ex) {
- getServletContext()
- .log(
- "An IncompatibleRemoteServiceException was thrown while processing this call.",
- ex);
- return RPC.encodeResponseForFailure(null, ex);
- }
- }
- }
xml代码:
- <bean id="bookservice" class="com.service.BookService" />
java 代码
- class BookService implements IBookService{
- }
- interface IBookService extends RemoteService{
- }
ok,该servlet继承RemoteServiceServlet,做了三件事
1.init时获得spring webContext
2.service时解析请求字符,如/service/bookservice,获得bookservice名,对应spring bean id
3.重写processCall方法,通过bookservice,在springContext中获得注册了的bookservice,提供调用
评论
14 楼
jiangmin
2008-11-20
GWT+SPRING真的让人弄的很郁闷啊,LZ是否能指点一下啊,根据你这样做了以后,掉用时出现以下错误 貌似那个GWTRemoteServiceServlet 就没调用到:
[WARN] Resource not found: login; (could a file be missing from the public path or a <servlet> tag misconfigured in module org.fungchoi.WebPMC.gwt.xml ?)
[WARN] Resource not found: login; (could a file be missing from the public path or a <servlet> tag misconfigured in module org.fungchoi.WebPMC.gwt.xml ?)
13 楼
yongyuan.jiang
2008-06-14
gwt前端定义一个异常类
public class ApplicationException extends SerializableException implements
IsSerializable {
后台出错抛出这个异常即可
public class ApplicationException extends SerializableException implements
IsSerializable {
后台出错抛出这个异常即可
12 楼
angeltping
2008-06-04
(gwt+spring)我想用aop拦截来判断session超时,但是我怎样才能能像客户端抛异常了让客户端知道我这个掉方法失败的exception是因为session超时了
11 楼
abo
2008-05-14
博主是javaeye上的gwt第一高人,特别希望博主可以就如何用gwt开发一个伸展性比较好的应用整理出一篇完整的文章,这样大家学习起来也比较方便。
再次谢谢博主。
10 楼
arpenker
2008-05-07
偶的个神啊。能否给个完整一点的DEMO啊。万分感激。
arpenker@gmail.com
arpenker@gmail.com
9 楼
arpenker
2008-05-07
倒。。。搞不懂呢。楼主。真是神啊。。弄个完整点的DEMO来啊。
邮箱:arpenker@gmail.com
thanks.
邮箱:arpenker@gmail.com
thanks.
8 楼
yongyuan.jiang
2008-01-09
哦,是这样子的。
1 perThreadRequest和perThreadResponse是private的,你这里怎么可以引用?
我把父类的方法全部写成protected了
2 HttpRequestContext这个类是哪里的?
这个类是自己写的一个类,用于存放requestde
3 readPayloadAsUtf8这个方法为什么我引用不到?
这个方法也是在父类当中
1 perThreadRequest和perThreadResponse是private的,你这里怎么可以引用?
我把父类的方法全部写成protected了
2 HttpRequestContext这个类是哪里的?
这个类是自己写的一个类,用于存放requestde
3 readPayloadAsUtf8这个方法为什么我引用不到?
这个方法也是在父类当中
7 楼
cloudyofsky
2008-01-02
yongyuan.jiang,对你的代码我有些疑惑,还请多多指教。
1 perThreadRequest和perThreadResponse是private的,你这里怎么可以引用?
2 HttpRequestContext这个类是哪里的?
3 readPayloadAsUtf8这个方法为什么我引用不到?
谢谢!
1 perThreadRequest和perThreadResponse是private的,你这里怎么可以引用?
2 HttpRequestContext这个类是哪里的?
3 readPayloadAsUtf8这个方法为什么我引用不到?
谢谢!
6 楼
yongyuan.jiang
2007-12-03
so good ,唉。我对spring那个ModelAndView 还是不懂
5 楼
gwbasic
2007-11-30
谢谢yongyuan.jiang,支持aop
另一个版本
delegate 用法参照 org.springframework.web.servlet.mvc.multiaction.MultiActionController
另一个版本
delegate 用法参照 org.springframework.web.servlet.mvc.multiaction.MultiActionController
public class GwtRemoteServiceController extends RemoteServiceServlet implements Controller, ServletContextAware { private static final long serialVersionUID = 8175888785480720736L; private Object delegate; private ServletContext servletContext; @Override public void setServletContext(ServletContext servletContext) { this.servletContext = servletContext; } @Override public ServletContext getServletContext() { return servletContext; } @Override public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { super.doPost(request, response); return null; } @Override public String processCall(String payload) throws SerializationException { Object delegateToUse = this.delegate; if (delegateToUse == null) { return super.processCall(payload); } else { try { RPCRequest rpcRequest = RPC.decodeRequest(payload, delegateToUse.getClass(), this); return RPC.invokeAndEncodeResponse(delegateToUse, rpcRequest .getMethod(), rpcRequest.getParameters(), rpcRequest .getSerializationPolicy()); } catch (IncompatibleRemoteServiceException ex) { getServletContext() .log( "An IncompatibleRemoteServiceException was thrown while processing this call.", ex); return RPC.encodeResponseForFailure(null, ex); } } } public Object getDelegate() { return delegate; } public void setDelegate(Object delegate) { this.delegate = delegate; } }
4 楼
yongyuan.jiang
2007-11-28
方便快速强大,不要把简单问题复杂化
3 楼
yongyuan.jiang
2007-11-28
支持啊,其实就是gwt调用了一个spring服务,而spring服务是一个gwt服务而已
2 楼
gwbasic
2007-11-27
这样做好像不支持aop
1 楼
yongyuan.jiang
2007-11-26
新架构优势:
1.没有使用第三方包扩展,更快速、更稳定
2.由一个servlet转发请求,服务类为spring注册的类,无需继承RemoteServlet,服务类不是servlet
1.没有使用第三方包扩展,更快速、更稳定
2.由一个servlet转发请求,服务类为spring注册的类,无需继承RemoteServlet,服务类不是servlet
发表评论
-
css split tool
2010-05-06 22:50 0css split tool 从gwt中抽取,希望可以在we ... -
GWT网站上线!hotye.com!
2009-03-31 20:26 5033GWT hotye.com 好易自助终 ... -
google web toolkit Serializable
2009-03-25 00:39 1001google web toolkit Serializable ... -
gwt :鼠标离开PopupPanel时触发事件
2008-09-05 00:08 1920此功能是丁鹤泽开发的: /** ... -
GWT Hosted模式运行原理
2008-06-14 17:32 3076hosted模式运行原理,对源 ... -
HTMLTemplatePanel使用
2008-05-28 01:20 1652新增功能 1.直接获得html页面元素,无需实例化对象,如:I ... -
GWT服务端抛出前端异常
2008-03-20 17:38 1625在后台抛出异常,并在前端能够捕获 方法很简单:要抛出的App ... -
Gwt 服务端使用hiberante 问题解决
2008-03-20 17:36 1847Gwt 服务端使用hiberante 问题解决 使用hib ... -
GWT & apache-commons-fileUpload 轻松实现文件上传
2008-01-18 11:44 2328gwt使用apache-commons-fileUpload, ... -
GWT Remote Service
2007-12-27 17:38 2004GWT Remote Service 远程调用服务 1.简介 ... -
GWT 模块间:组件管理 & 事件处理
2007-12-13 18:53 2372原始的gwt开发模式在大型项目或复杂页面中并不适用,这促使了 ... -
GWT HTML Template :模板布局&组件自动装配
2007-12-03 19:58 5708GWT HTML Template 1.简介 gwt进行ht ... -
GWT Object Exporter ,GWT模块间传递对象
2007-10-29 15:15 5045GWT Object Exporter<o:p> ...
相关推荐
标题 "gwt spring整合资源下载" 暗示了这个压缩包包含的是一些关于将Google Web Toolkit (GWT) 和Spring框架整合的资源。GWT是一个用于构建高性能、交互式JavaScript应用程序的Java开发框架,而Spring是一个广泛使用...
【GWT与Spring整合】是现代企业级应用开发中的一个重要话题。Google Web Toolkit (GWT) 是一个由Google开发的开源工具包,它允许开发者使用Java编写富互联网应用(RIA),然后自动将其编译为高效的JavaScript代码。...
本项目"smartGwt、spring、Mybatis整合"就是一个很好的例子,它将三种流行的技术——SmartGWT、Spring和Mybatis融合在一起,创建了一个包含登录功能和分页查询功能的应用。以下是关于这三个技术及其整合方式的详细...
综上所述,"gwt+spring+hibernate"的整合旨在展示如何在Java Web应用中同时利用GWT的富客户端特性、Spring的架构优势和Hibernate的数据持久化能力。通过这样的整合,开发者可以构建出用户体验良好、业务逻辑清晰且...
首先,整合GWT和Spring的主要目标是利用GWT的客户端功能和Spring的服务器端能力。这通常涉及以下步骤: 1. **配置Spring**:在服务器端,我们需要创建一个Spring配置文件(如`applicationContext.xml`),定义bean...
为了整合这三个框架,开发者需要配置Spring的ApplicationContext,声明SmartGWT的视图组件和Spring的业务层bean。同时,需要设置Hibernate的SessionFactory,通过Hibernate的Configuration类加载数据库配置,并创建...
SmartGwt、Mybatis与Spring的整合是企业级Java应用开发中的常见技术栈组合,这三种框架各有其专长,可以高效地构建出强大的后台系统。SmartGwt是一款基于GWT(Google Web Toolkit)的开源UI组件库,提供丰富的用户...
GSH:spring3.1.0M2+Hibernate3.5+GWT2.4+JPA+Annotation+Spring4gwt0.0.1亲手整合,也可以上新浪博客去看 http://blog.sina.com.cn/s/blog_687dfecb0100yrmf.html
【标题】"GWT+Spring demo- springgwt_sudoku" 涉及的主要知识点是Google Web Toolkit (GWT) 和Spring框架的整合应用。这是一个实际的项目示例,展示了如何将GWT的客户端能力与Spring的服务器端功能相结合,以创建一...
【GWT整合Spring】是指将Google Web Toolkit (GWT) 应用程序与Spring框架集成,以便利用Spring的强大功能,如依赖注入、事务管理、安全控制等。GWT 是一个用于构建高性能、富客户端Web应用的Java开发工具,而Spring...
标题中的“gwt和tomcat整合”指的是将Google Web Toolkit (GWT) 应用程序部署到Apache Tomcat服务器的过程。GWT是一个开源的Java框架,用于开发在浏览器上运行的富互联网应用程序(RIA),而Tomcat是一款流行的、开源...
标题 "Ext-Gwt(GWT)开发实例(整合Spring +Hibernate)" 涉及到的是一个实际项目开发的教程,其中结合了三个重要的技术框架:Google Web Toolkit (GWT),Spring 和 Hibernate。这个实例旨在展示如何在Web应用开发中...
GWT(Google Web Toolkit)和Spring框架的集成是...此外,还可以了解到如何整合数据库操作,以及Spring的依赖注入和事务管理功能。这个例子对于理解GWT和Spring的集成原理,以及实践Web应用开发具有很高的参考价值。
通过深入研究这些文件,我们可以学习到如何在实际项目中整合GWT和Spring,如何设置和配置Spring环境,以及如何在GWT客户端与Spring服务器之间进行通信。这对于那些想要掌握这两种技术结合使用的人来说,是一个宝贵的...
在IT行业中,Spring框架是Java企业级应用开发的首选,而Google Web Toolkit (GWT) 则是一个用于构建和优化复杂Web应用程序的开源工具。本文将深入探讨如何将这两个强大的技术进行集成,以便利用Spring的强大功能来...
本篇文章将聚焦于如何在EXT-GWT中整合Spring框架和Hibernate ORM,以实现高效的数据操作。 首先,让我们了解EXT-GWT(GXT)的核心概念。EXT-GWT是GWT的一个扩展,它提供了大量的UI组件,如表格、树、表单等,以及...
Spring4GWT是将Spring框架与Google Web Toolkit (GWT) 结合的一种技术,它旨在帮助开发者在GWT应用中更好地实现服务层管理和依赖注入,从而提升开发效率和代码的可维护性。以下是对Spring4GWT技术的详细说明: 1. *...
将GXT、GWT与Spring结合使用,可以构建出高效、可维护且功能齐全的企业级Web应用。 GXT是Ext JS的一个Java版本,提供了大量的桌面级UI组件,如表格、图表、树形视图等,同时还支持数据绑定和分页功能。GXT的优势...