淘宝网表现层设计分析

http://tech.ddvip.com   2008年06月03日    社区交流

内容摘要:淘宝网采用阿里巴巴自己开发的一个MVC框架,动态网页(jhtml页面)的通用入是口WebxControllerServlet,最终调用/执行模版是在TemplateModule的子类中完成的,然后在Module执行完成后跳转到一个视图(JSP文件),在Servlet和Module中是通过Valve的职责链处理。

  前几天突然发现淘宝网访问非常慢而且出错(出现异常),猜测是淘宝网在发布新版本时出现错误或是某个服务器出现异常。但淘宝网的工程师在输出错误时生成了客户端注释掉的Java异常信息(包含在<!--和-->之间),虽然在画面上是看不到的,但查看源代码就可以清楚的看到这个Java出错信息。

  淘宝网采用阿里巴巴自己开发的一个MVC框架,动态网页(jhtml页面)的通用入是口WebxControllerServlet,最终调用/执行模版是在TemplateModule的子类中完成的,然后在Module执行完成后跳转到一个视图(JSP文件),在Servlet和Module中是通过Valve的职责链处理。

淘宝网表现层设计分析

  图1 淘宝网部分类图

  一个Web请求的基本处理流程是:

  客户端发出Web请求

  WebxControllerServlet

  PerformScreenTemplateValve

  TemplateModule

  附(本文基于下面的异常分析):

  Exception: com.alibaba.webx.WebxException: Failed to execute screen: home.MyTaobao (template:

  screen/home/myTaobao.vm)

  at com.alibaba.webx.WebxControllerServlet.handleRequest(WebxControllerServlet.java:111)

  at com.alibaba.webx.controller.AbstractWebxControllerServlet.doGet(AbstractWebxControllerServlet.java:113)

  at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)

  at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

责编:豆豆技术应用

正在加载评论...