• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

调试 IBM Workplace Collaboration Services

发布: 2008-6-17 10:18 | 作者: 不详 | 来源: IBM | 查看: 26次 | 进入软件测试论坛讨论

领测软件测试网



在单击 Finish 之后,portlet 就被部署到 Workplace Collaboration Services 服务器中,并且浏览器也被调用。可以导航到 PortletPreview 页面来查看 portlet。(因为 Workplace Collaboration Service 运行在调试模式下,所以它显然比平常慢很多)。

提示:如果编辑在 Portal 选项卡下创建的服务器配置,并将 Label Ordinal 字段设置为零,那么 PortletPreview 页面将是您打开的第一个页面。

如果一切顺利,那么您应该看到错误消息:“This portlet is unavailable. If the problem persists, please contact the portal administrator”。参见图 8。


图 8. MeasureConverterPortlet 错误 
 

调试应用程序

显然,我们所讨论的 portlet 中有一个错误,我们必须调试该错误。打开 MeasureConverterPortlet 项目中的 MeasureConverterPortletView.jsp 文件,切换到 Source 选项卡,并在第 8 行中插入一个断点:

PortletSession pSession = portletRequest.getPortletSession(); 
为了调试问题,首先必须连接到服务器。在 Servers 视图中,右击服务器并从菜单中选择 DebugRational Application Developer 将连接到远程 Workplace Collaboration Services 服务器,并切换到 Debug 视图。在浏览器中导航到 PortletPreview 页面。当服务器正在呈现该页面时,它应该能够找到您所设置的断点,并且控制权将传递给 Rational Application Developer 的 Java 调试器。使用这个调试器可以执行普通的单步执行,并进入到代码行 —— Java 和 JavaServer Pages (JSP) —— 检查和修改变量。

如果使用 F6 键来单步调试 JSP 的 Java 代码的每一行,那么应当看到是什么导致 portlet 不可用:

    String formText = sessionBean.getFormText();
            String message = null ;
            if( formText.length() > 0 )
            {
            ...
            }
            
 


在这个代码片段中,getFormText() 方法返回 null,这意味着 formText.length() 将抛出一个 Null Pointer 异常。现在我们完成了对此错误的调试,然后可以通过再次右击 Servers 视图中的服务器并选择 Disconnect 来断开与远程服务器的连接。

为了解决导致异常的问题,请打开 MeasureConverterPortletSessionBean.java(可能需要切换回 J2EE 或 Web 视图来打开此文件)并将下列代码行:

private String formText = null ; 更改为:

private String formText = "" ; 保存更改,并通过右击 portletand 并选择 Run - Run On Server 来再次运行 portletand。在这里,portlet 应当能正确显示,但还有一个故障需要修复。如果输入 10 km 作为输入,它会被错误地标志为无效输入。

再次通过在 Servers 视图中的服务器的上下文菜单中选择 Debug 连接到服务器。如果仍然保留着先前的断点设置,那么会在同样的位置中断。如果没有中断,需要像先前一样再次设置断点。

再次分步调试 JSP 的 Java 代码,我们将看到输入被正确的检索为 10 km。进一步观察还可以发现, MeasureConverterDelegate 类正确地执行了转换,将 10 km 转换为 6.2 英里。

文章来源于领测软件测试网 https://www.ltesting.net/

65/6<123456>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网