2008-8-1
庆祝八月份到来,祝奥运会圆满成功。连了三天还是四天的ejb连接数据库终于连上了,扬眉吐气啊!是这样的,用netbeans那个IDE,自建持久化单元,选择hibernate连,然后他那些配置文件全部搞定,尤其是jboss-ds.xml摆放的位置特别有才,放在server Rescours这个文件里面啊,然后那个persistence.xml也是生成的特别有才,什么都给我配好了,一看就懂。然后在运行过程中直接帮我自建数据库,太有才了,一步到位。最后我是硬把客户端拆出来,然后在别的project里面运行,重启了几次服务器,
<persistence-unit name="TitanEjbPU" transaction-type="JTA">这东西要对应好,然后在第二个project TitanEjbClient里面成功运行了我的第一个ejb连接数据库程序,真是不容易呀。
问:是不是ejb要强制分层才能运行得起来呢?是不是client和ejb组件一定要分开来才能运行得起来呢?
2008-7-31
这几天开始学ejb,一句话,不是他搞定我就是我搞定他,ejb,哼。Ejb是什么,重量级对象,要部署在服务器端的对象,重量级的,服务器的,放在服务器上面的!真正的分层,不是ssh的伪分层,强制分层,客户端要调放在服务器里的ejb组件,就要老老实实的导入jar包一句一句一步一步的给我掉,服务器端客户端十分分明,ejb就是一个大插件,一个大对象,放在服务器端的重量对象。
有一个错误一直没调出来,也是对ejb分层概念理解不深刻造成的,原来client有专门的cilent jar包给他导入,一定要导入了client jar包了,分层了,才能用,才能没有异常。一定要导client jar 包呀,这个错误搞得我几天了!client和ejb服务器端组件是严格分开的,这才是真·java企业级·分层应用!
2008-7-23
昨天出了很多错误,出了很多莫名其妙的错误,什么因为一个错误导致网页不能显示,主要是这个,也是搞到我焦头烂额,后来是由于这个validation.xml没有写,没有写那个语言空间,那个<form language=”zh”>没有配导致的,而且网页中又运用了
<html:form onsumit=””><html:javascript formName>这样的标签,所以导致异常不断,网页无法显示,当我把validation.xml配好了,一切就都解决了,现在连那个Tomcat Log里面也没有异常出现了,太好了,我讨厌异常,讨厌一切形式的异常。
2008-7-21
每天都要进行连编,就是每天都要将你当天做的东西放在服务器里运行一下,不管你今天做了多少,就是要放进去运行一下,保证你每天做的东西出错最少,虽然这种方法能发现的错误很少,但是他就是能跑起来了,每天都跑起来一点点,那么做到大了的时候他也照样能跑起来了。不然等到你的后台代码全部写好了,在想让他跑起来的时候,他就像一个零件散落一地的怪物一样,怎么也跑不起来了,因为里面隐含了太多天来太多的错误了。
比如你写好pojo后,你能放到Hibernate里跑起来,这是连编的第一步,以后也不能放弃。比如你写好dao之后,也要立刻把spring配起来,放到服务器里,配好web.xml,让他在服务器里跑起来,配好struts-config.xml,大家一起在服务器里跑起来,不然如果你不天天这样话,等到你把后台全部建起来了,到时服务器第一次连编,第一次跑起来的时候,你会发现到那时就有太多的错误了,你再也无法去捕捉了,你再也不想面对你的系统了。
所以每天都要进行连编。
13:37今天发现了一个很奇怪的错误!spring一配置之后,发现服务器完全启动不了,那个applicationContext完全不能初始化,提示了很奇怪的错误,可能是aspecj的错误,于是我硬着头皮加了几个aspectj的jar包下去之后,才能神奇的跑起来,这是为什么?包没有导入?可是他是提醒我我是包嵌套啊,奇怪,反正记着这个错误先。好象是网页完全不能打开,是因为applicationContext这个xml文件没有初始化好?
13:37问题找到了,lib/aspectj/下的两个jar包没有导入造成的,尤其是aspectjweaver.jar这个包!另外一个好像最好也导入进去,我现在来试第二个项目,auction。
14:08错误找出来了,是由于一个J2EE的包——mail.jar没有导进去,导致applicationContext.xml不能初始化。applicationContext.xml不能初始化问题就很严重了,导致整个服务器不能跑起来,我的应用无法跑起来,看来spring在伟大的同时也是十分的挑剔的啊,所以以后做项目那个jar包一定要注意好!现在剩下一个问题了,那个servlet的验证码。
17:53 由遇见一个错误了,login页面死都不肯给我显示出来,这样的:
HTTP Status 500 -
description The server encountered an internal error () that prevented it from fulfilling this request.
我是调啊调老是调不出来,但是刚才无意间在系统自动生成的Tomcat日志中看到javax.servlet.jsp.JspException: Cannot retrieve mapping for action /processLogin
这句话,很可能是我这个/processLogin这个action还没有写,等下来写,看行不行,能不能跑得通。又得出一个结论,要是错误老是找不到,看日志(在netbeans中)。