MyEclipse AJAX 调试教程

来源:百度文库 编辑:神马文学网 时间:2024/04/29 06:39:15
MyEclipse AJAX 调试教程
翻译: 刘长炯BeanSoft@126.com
Blog:http://www.blogjava.net/beansoft/
日期: 2007-11-22
声明: 中文文字版权归 刘长炯 所有, 原文及相关的图片等资源的版权归原作者 Genuitec L.L.C 公司所有.
目录
简介建议的听众系统需求AJAX Debugging小结常见问题 FAQ资源反馈
1.
欢迎来到 MyEclipse AJAX 调试教程 . 在这个教程里面我们将会向您介绍如何使用 MyEclipse 中的 AJAX 调试功能, 并通过调试一个真实的远程站点来展示其过程. 希望这个介绍能够让你能够调试自己的 AJAX 代码或者通过调试别人的代码来学习.
2.
这个教程为那些熟悉 MyEclipse 或者 Eclipse 的开发人员, 能够浏览 IDE 里面的内容, 并理解一些基本的视图例如调试器. 如果你曾经从事过 JavaScript 的编程, 或者对它有一个基本的理解, 都是很有帮助的, 这样就能理解方法调用或者参数并检查他们的取值.
如果您仅仅从事过普通的程序开发, 非常欢迎您对 MyEclipse 在进行 AJAX 开发时能够做什么有所了解, 不过下面提到的一些机制, 例如断点, 调试器, 变量检测, 乍看起来将会很陌生. 请阅读资源 部分来获得对 JavaScript 和 AJAX 的介绍的相关链接. 要想了解和学习 MyEclipse , 请访问我们的产品文档 来获得更多信息.
3.
这个教程基于 MyEclipse 5.1 制作. 如果你在使用其它版本的 MyEclipse, 绝大部分的屏幕操作和说明都将是十分相似的.
如果你使用的是最新版本的 MyEclipse, 并且发现本教程的一些部分和你使用 MyEclpse 时所看到的屏幕不一样, 请告诉我们 , 我们(注: MyEclipse 文档团队, 不是我, 翻译这份文档的人) 将会确保解决任何不一致的地方.
4.
这个教程里我们将会连到一个开发人员的社区网站 dzone.com. 如果你不熟悉 (或者 Digg.com), 我们介绍一下它的工作方式, 它让用户提交故事, 其它人对这个故事进行投票, 可以对总票数加1或者减1. 在任何时候, 故事的总票数决定了它的"重要度", 这将决定这个故事是否能显示在网站的首页.
对于这个教程来说, 这个站点有趣的地方是 Dzone 的开发人员使用了一个名为 DWR 的 AJAX 框架来处理投票. 在这个教程里面我们将会调试增加故事票数的操作来看看这个特定的 AJAX 调用是如何工作的.
因为这个教程是入门介绍, 我们不会进入到所有复杂的 JavaScript 的调试里面. 代替的方式是我们准备使用一个简单的例子, 但是仍然可以提供足够的信息使你可以调试自己的项目. 如果你工作的时候对这些工具有任何疑问, 请把他们提交到我们的AJAX 支持论坛.
第 1 步
最简单的调试 AJAX 调用的方法是用 MyEclipse AJAX Web 浏览器打开想调试的网站.  我们将通过打开 AJAX Web 浏览器 来开始一个调试会话. 可以通过点击 MyEclipse 工具栏上的 AJAX Web Browser 按钮来打开它, 如下面的动画所示 (注意: 点击 "Play" 来播放这个演示):
',1)">
图 1. 点击工具栏上的 AJAX Web Browser 按钮来开始工作
点击过 AJAX Web Browser 工具栏按钮后, 浏览器窗口将会打开. 您可能对窗口里面这么多的视图感到迷惑不解, 不过在开始调试之前你只需要关心两个重要的视图: MyEclipse AJAX Web Browser 和 DOM Inspector(DOM 查看器).
浏览器视图很直接了当; 它是个简单的专门用来调试的网络浏览器. 视图 DOM Inspector 显示了当前查看的网页的 DOM 大纲(Document Object Model). 它显示了基于标签结构的当前页的布局. 如果以前没做过 AJAX 开发的话, 这个看起来也许没什么用处.  不过, 一旦你开始通过编写 JavaScript 来显示或者隐藏页面中的部分元素来响应用户的输入, 你将会开始意识到页面的 DOM 是很重要的.
第 2 步
接下来, 我们将把 Dzone 网站加载到浏览器中, 然后开始调试我们的会话. 第一步就是输入网址然后在浏览器视图按下回车(Enter)键.  页面加载之后, 我们可以通过点击工具栏上的 Instant-On debugging 按钮来启动调试会话, 如下所示(注意: 点击 "Play" 来播放这个演示):
',2)">
图 2. 浏览 Dzone 网站然后启动调试会话
第 3 步
当调试会话启动后, 我们要做的就是熟悉一下界面, 然后看看这些不同的视图都是干什么的(现在他们都加载了, 并且显示了信息).
注意: 要给一个 dzone.com 的故事投票, 必须要有 Dzone 账户. 你可以在这里 免费注册一个 Dzone 账户.
下一步就是触发一个投票操作, 然后使用 AJAX Request Monitor(AJAX 请求监视器) 来试试的查看发生的请求并理解调用了什么 JavaScript 函数.
一旦我们确定了哪个方法被调用了, 我们将会在 JavaScript 函数中设置一个断点, 然后再次投票.  这将导致断点可以被访问, 这样可以给我们一个查看脚本到底在做什么的机会 (注意: 点击 "Play" 来播放这个演示):
',3)">
图 3. 启动了调试会话后, 很容易就可以设置和访问一个断点
5.
现在我们希望你对如何在 MyEclipse 中调试 AJAX 有一个很好的了解. 我们已经努力工作, 来使你能够更快更容易的调试自己的工作, 有源码的程序, 也能够让你来调试其它程序来学习一些高级的 AJAX 产品是如何工作的. 调试的附加好处是它可以让你缩短新项目的开发时间, 通过从用户的角度来分析应用程序, 可以简单的通过学习别人的代码从底层开始实现项目. 如果你对这些内容有什么好建议, 请告诉我们.
我们将在下面提供一些和这个教程有关的信息. 我们提供了FAQ 部分 来快速参考一些常见的问题以及资源 部分 来链接到其它有用的在线资源, 这样你可以熟悉一些相关的内容. 我们认为我们不能在一个教程中包含每一个问题, 但是通过这个教程的内容和提供的附加的其它的学习资料, 我们希望您能对这个技术很快上手.
6. 常见问题
这个部分将会列出一些常见的问题, 这些问题在实践本教程列出的内容时可能会产生.
JavaScript 查看器, 控制台, AJAX 请求监视器和其它视图是空的.
出现这种情况的原因很可能是因为你忘记了点击工具栏上的 Instant-On debugging 按钮, 这将告诉 MyEclipse 把当前页面加载到调试会话中. 在这之后, 所有的这些视图都会被填充.
我无法找到被调用的函数.  当我展开 JavaScript 文件的时候我看到的全是 "Anonymous". 这个是由 JavaScript 中的匿名函数定义所造成的. 好消息是你仍然可以在代码里设置断点, 这些断点将会在调试器执行的时候看到. 你只需要手工决定哪个方法被调用.
调试的时候特别慢, 我能不能让它快一些? 当调试一个包含大量 JavaScript 文件的站点的时候会出现这种情况. 因为 JavaScript 的每一行都变成了一个有效的断点目标, 一次在运行的时候执行 JavaScript 变得非常消耗资源, 因此看起来变慢了. 为了加速一些调试会话, 你可以调整内存设置, 如这里所示.
7.
在这部分中我们将会向您提供一些链接, 这样使您学习 AJAX 和 AJAX 调试都变得更容易一些. 因为这不是个完整的列表, 我们已经尽力想你提供常用的一些链接来提供多样化, 高质量的信息.
对于这些不是很了解 "AJAX" 技术中的 "JavaScript" 部分的开发人员, 我们强烈建议您去下面链接中的 Introduction to JavaScript 部分. 这些文章将会介绍一些基础的 JavaScript 编程, 这样你将会理解 JavaScript 是如何工作的, 这样您可以更容易的理解 "调试" 过程.
对这些希望更多深入了解 AJAX 并希望获得一些例子的朋友们, 请直接跳转到 AJAX 资源, 站点和教程 来查看一些链接.
(译者注:下面这些文章是英文的, 你可以在 www.google.com 输入 JavaScript 教程, AJAX 教程等获得更多信息).
JavaScript 介绍
W3Schools: Introduction to JavaScript programmingWebteacher: JavaScript programming for non-programmers
AJAX 的相关信息
Wikipedia: What is AJAX?Adaptive Path: The first introduction article to AJAX
AJAX 资源, 站点和教程
Ajaxian: Excellent resource for AJAX news and resourcesMozilla: AJAX Developer CenterSun: AJAX Programming in J2EE
AJAX 框架
Google Web ToolkitPrototypeDojo ToolkitDWR
8.
我们非常希望听到您的声音! 如果你喜欢本教程, 有建议甚至错误修正建议, 请告诉我们. 我们通过文档论坛 来跟踪所有用户对学习资料的建议.  请告诉我们您正在评论的是哪份 MyEclipse 资料这样我们可以更快的查明出现问题的章节.