基于weblogic的web应用调试技巧(心得篇)[转帖]_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3779 | 回复: 0   主题: 基于weblogic的web应用调试技巧(心得篇)[转帖]        下一篇 
yun
注册用户
等级:少校
经验:1082
发帖:83
精华:4
注册:2012-12-17
状态:离线
发送短消息息给yun 加好友    发送短消息息给yun 发消息
发表于: IP:您无权察看 2012-12-17 17:10:19 | [全部帖] [楼主帖] 楼主

调试往往能显示一个编程人员的经验和水平,因为新手在代码能够“1039(一路畅通)”的时候还算是进展顺利,一旦遇到bug,而又缺少调试经验技巧,就要“塞车”很久,甚至一天的时间连一个坎也过不去。写代码酷似开车,选对了路(思路对了)就会一路畅通;而如果走近了死胡同,只有“倒车(推倒重来)”的份了。这就象实习司机与老司机的区别一样,如果车开着开着忽然熄火了,实习司机估计只能等待救兵了,而老司机倒是可以想象前因后果,动手自己搞定。诚然,冰冻三尺,非一日之寒,即使是新手,也不要着急,要懂得如何积累,如何使自己的“调试百宝箱”日益鼓起来。

     

         如何记录自己的调试经验呢?你可以选一个小工具,比如一个小软件,以前用过一个,忘记叫什么,可以分类记载各种你的调试经验记录,比如数据库的,程序设计的,当然,你也可以把常用代码存起来。另外一个好的方式就是写下来,因为毕竟我们的记忆能力是有限的,车房已经占了半个脑袋,知识挤在车缝墙角,迟早会被湮灭的,写的方式有很多种,写blog就不错嘛,在51cto写blog就会是个更好的选择了。嘿嘿(顺便帮管家小废同学做个广告。。。)

   

           下午的安排是这样的,被同学叫去打球,结果说特招体育特长生考试,体育馆闭馆,于是,就近来了实验室(本来要睡觉的)。启动weblogic,输入 http://localhost:7001/,仍旧是Error 404 Not Found!! 昨天写着写着就这样了,因为赶上同学喊,就以为重启一下wl就好了呢,谁知道不灵验!如何是好?这时,我意识到,是出bug了,而不是重启就能解决的了。于是,我把部署好的web applicaiton卸载掉,重新部署。结果部署就不成功,提示错误:

Exception:weblogic.management.ApplicationException: Prepare failed. Task Id = 1 Module: bjmi Error: [HTTP:101179][HTTP] Error

occurred while parsing descriptor in Web application "D:\bea\user_projects\domains\bjmidomain\applications\bjmi"

[Path="D:\bea\user_projects\domains\bjmidomain\applications", URI="bjmi" org.xml.sax.SAXParseException: The entity name must

immediately follow the '&' in the entity reference. 

       于是,使出杀手锏——google一下"The entity name must immediately follow the '&' in the entity reference. "搜索结果一大堆,大部分是英文的,怎么说的都有,有的说web.xml的格式不对,有的说是其中的如下部分设置不对:

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>


  </welcome-file-list>

    
         我屏蔽了这个还是不成,因为之前也是这么写的,一直没有发现错误。这时,我注意到了错误提示中一个重要暗示——'&' ,看到web.xml

中有如下一段:

 <filter>
<filter-name>GlobalFilter</filter-name>
<description>refresh & internet filter</description>
<filter-class>cn.gov.bjmi.filter.GlobalFilter</filter-class>
</filter>


        脑中闪过当时似乎就是添加了& internet filter后出现的问题,于是,将"&"改为"and",重新部署,一切ok!

        然后,我又试验了一下,去掉"&"与"internet filter"之间的空格,因为,根据错误提示可能这样会可以,但是,答案是否定的。去掉前后的空格依旧不成,于是,老老实实地使用了"and"代替"&"。

        之后那叫一个顺,解决掉了课题最核心的部分,因为这部分一直在两个方案中权衡,路线已经选择了很久,今天定了一条,一路畅通就过来了,拿到了最核心的访问日志,下一步就是开始分析日志了。

       这里除了提示大家在weblogic中遇到含有"&"的错误提示时,可以尝试将其换掉外,另外一个目的就是谈一下debug的心得。记得有几次,遇到很棘手的问题,然后经过几番周折才搞定,而后,别人问起或者自己再次遇到,印象就不很深刻了,那么,不妨就记下来,俗话说“好记性不如烂笔头”,呵呵,反正我自己是习惯了写写东西,而且正在开始自己的撰稿之路,目前已经发表了第一篇稿件(《软件世界》——《变更全攻略》),第二篇已经完成——《集群实战实现负载均衡和HA》,还没确定要往哪里投呢,呵呵。

本文出自 “雨寒” 博客,转载请与作者联系!




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论