00:00
然后呢,我们下边再看哈,就是我们在页面上呢,不可避免的我们会需要去写这个一尔表达式,那么伊尔表达式呢,大家要是有印象的话,你会知道这个地方应该是有提示的,奥提杠应该是有提示的,但是这个时候呢,这个时候这个request哈,往下这有,但是从context到request这这没有啊这个为啥呢?因为这个request哈。Solve request它是属于谁的呢?它属于SO1PI啊,它属于SO1PI,那么这个时候呢,因为它属于sopi这个它的运行环境已经导进来了,它就后边就就能够有提示,但是呢,这个context,我们说这个context它属于谁呢?哎,它属于GSPAPI,那么你GSPAPI呢,你没有导进来,那就它就它这一段就没有了,所以说呢,我们要是想让他这儿呢,有一个良好的提示,我们就需要把gsppi呢也给它导进来啊,也给它导进来,那就倒吧,嗯,这报错了啊,报错了完了你打开以后呢,他又什么都没有,这种错怎么办呢?这种错哈,我们去把这。
01:35
Problem这个调出来在这删了,有时候你删了吧,它你重新一编译它就出来了,所以这个有时候这个山呢,这个不太好办啊,他在这你看他说个什么错误呢,Java x.so.gp看到的be to type,这想必啊,我们导了这个PAAPI以后呢,应该就它就能找着了啊,所以这个咱们暂时呢,先不去针对它去处理,我们去把这个GAPI这个导进来。
02:06
CCTRLF。CTRLC。它当然也是pro吧的范围的,你看刚才这错误就没有了,哎,然后呢,我们再写再写。配置context.request哎,你看就有提示了,这个提示就很少了,然后当然这个运行的话呢,这个这些都能够这个显示,我们给它跑一下。这个一下子就过来了,然后这个地方也显示的也不对,这都没出来,这个大家能想到是因为啥吧,你看我现在我现在打打开这个窗口一下子就打开了,他按说他得这个他得他得解析,他得执行一下吧,稍微他得有一点延迟吧,但是它一点延迟都没有,我这新加的内容呢,它也没显示这个,你说它因为啥缓缓存呀,谁的缓存,谁的缓存浏览谁的缓存,哎,浏览器的缓存呀,对吧,浏览器的缓存啊,这个IE,因为我们eclips内置的这个浏览器啊,是一个是个IE,这个IE这个东西缓存比较严重啊,它不是你服务器的缓存,是你浏览器的缓存,在这儿我们刷新了一下。
03:38
这个值一二百达式,哎,这些的值就显示出来了,在这关于这个GSPAPI哈,我们给大家演示一个,演示一个特别严重的一个问题,什么问题呢?如果它不是provide的范围的,如果这个家伙是comp范围的,这个问题就严重了,你看GSPAPI啊,这个它呢依赖这俩啊,它所以这个时候它导这个部署过来的是这仨。
04:14
然后呢,我们再刷新一下这个页面,啥玩意儿,空指针异常,按说呢,空指针异常是我们最好解决的一个异常,因为空指针异常就是因为用闹去调了方法或者访问了属性了是吧,我就看看这个对象它为啥是闹就行了,但是我们看看现在这个控制针异常它出现在什么地方呢?GSP,呃,Index_GSP然后点这个GSP,好吧,这是这个GSP的这个,呃,这个叫它的这个什么目录来着,不是这哈,Work卡特琳娜它翻译的那个结果的那个目录,咱们讲GSP的时候应该来这看过吧,这不就是GSP翻译以后的那个Java文件吗?好打开,他说是这不第22行哈。
05:08
哎,你看我们把这缩小一点啊,是放在同一行。这第22行的是这么一行代码,谁他妈能看得懂,我们大概可以估计一下,估计一下你看这个是什么,这里边有什么哈,呃,这这是solid con,这是solid context,然后呢,它获取了一个G的OB context,然后又获取了一个expression,这个factory,它这个应该是跟本达是有关的,这不也是氧嘛,Expression fair它是为了得这么个工厂,得这工厂的时候呢,就这一行代码呢,它出现了控制帧异常啊且不说呢,我们现在还说不好到底这里边哪个是闹,你即便知道了这里边哪个是闹的话,你又能怎么样呢?这个代码,这个代码你想改源码,你通过改源码的方式去修修正都不行,因为这个代码不是不是那个,就是不是我们传统的那。
06:13
种那个框架或者环境的那个源码,它是人家自动生成的,或者说这个是程序动态生成的这个代码,所以你要是改它,你从这儿呢,绝对是找不到这个问题的解决的办法的,从这绝对找不到解决的这个问题的办法的啊这个其实最早出现这个问题呢,是咱们讲完这课以后,有同学呢,他写的时候出现这个问题,当时我也是就看着这个问题哈,一筹莫展,根本你就是你根本你看着这个呢,你表面上看这表面信息根本判断不出来这个到底是因为是什么问题。后来过了好长时间啊,出问题的那个班都那课都已经结束了,我就到下一个班的时候,我才在,我才后来才才换了一个思路去想,他在这儿呢,是跟亚尔法达是相关的,然后又是SP这个页面上出的这个问题,会不会是因为这个GSPAPI的这个价包的冲突的问题呢?
07:09
诶,结果这么一看呢,回头测试一下,发现以后还真是因为它是compile范围的,那么这个价包呢,以及它依赖的架包就会被拿到我们这个部署的目录下面,就会被拿到这个部署的目录下面就是这些,那么这些假包呢,我们说呀,Tomcat也有,Tom KT也有,我们去看看Tom KT的这些家包。卡住了,这个不要诅咒我啊,呃,我们看他派的这个Li,呃gspi什么EL是吧,什么solid,人家这个人家这有是吧,那谁还用你的是吧,这不是说这个,你这个不是说这个啊,这个我买了,我买了一包糖,我说我我我出去分享是吧,这个咱哥俩一起吃,你说你跟我客气是吧,哎,不吃你的我有我有是吧,不是这个事儿啊,他现在是不是说是这个咱们吃谁的都行,这个事儿他现在是你你导多了以后呢,它就冲突啊,现在我们这儿就是因为它冲突了,他才去抛的这么一个匪夷所思的这么一个异常,这个异常从这个抛异常这个地方是根本没办法解决的啊,所以说这个东西就是血的教训啊,就是大家你你就是有很多同学呢,就是还是抱着幻想。因为这个伊。
08:35
带的范围不好理解嘛,他就想我都设置成这个comp范围的行不行呢?不行,真的有的时候真的会发生冲突啊,所以这个地方呢,大家千万注意这个问题。呃,当然了,我们说哈,这个什么内容讲完以后呢,一定有同学呢,是他记不住这个也是这个,这也是正常的,但是我希望呢,你自己做的时候,你如果遇到了这样的问题,在GP这个翻译,翻译得到这个代码里边,它抛控制针异常了,我希望你能够想到我们今天说的这个,你能够找到啊,原来是这我这个依赖范围的问题,你改过来就解决了就好了啊。
我来说两句