《晚唐再起》
第0001 刺杀(上)
大唐僖宗文德元年三月,西历八八八年。
一支两百余人,步骑掺杂的车队在黄昏的伴随下悄然进入了关内道凤翔镇境内。没多久,便停在了一座陈旧而荒凉的驿馆旁。
百十匹马和车停下来,人影忙忙碌碌,发出嘈杂的声音,毛色各异的马匹喷着响鼻使劲摇晃着脑袋在原地踢踏着蹄泥,好像要把浑身的疲累抖落掉。
这一路众人赶得急迫而匆忙,天又闷热,身上满是汗臭与灰尘,一找到落脚的地方就围着水井,打水洗漱。
驿馆的二楼厢房内。
寿王李杰做了一天的车了,却没有多少睡意,自穿越以来还是第一次坐这么久的马车,他移开镇纸,正打算看完一段《史记》再入睡,长史安平道早已将一份用宣纸书就的策论放在了李杰寝室的案几上。
安平道语重心长的说:“这份策论臣原本是不打算给殿下看的,如今既已被长安天子立为储君,臣觉得是时候看一看了,要入京了,也好做到心中有数。”
李杰点了点头,见安平道枯瘦的脸上已经布满了疲惫之色,忙道:“策论学生会看的,这一路长途跋涉,先生定然累了,先去歇息吧!”
安平道是寿王府的老臣,五六年前寿王开府后,他便是王府的长史,做事细致用心,方方面面都考虑的很是周全,把王府的政务打理得井井有条,身体的原主人因此对他很是依靠和信赖。
这一路安平道一直骑在马上,百多号人的队伍及行囊,他跑前跑后都要看顾,确实异常辛苦。
见寿王如此体恤自己,安平道心中涌过一阵暖流,鼓着眼珠道:“殿下还未歇息哪有臣子歇息的道理。”
“先生年纪大,这一路行来前前后后都是先生在操心,学生都看在眼里的,这里教给内侍李尧吧,他招待完使臣后就会过来的,先生还是去歇会儿吧,明日还要继续赶路。”
李杰边说边把他往屋外推,从此地到长安还有几天的路要赶,他怕安平道在中途就累垮了。
推开门,王府典军何舜臣顶盔贯甲,刀不离身正守在室外。
李杰对何舜臣说:“卿也累了吧,多叫几个护卫在廊道上巡视就可以了,都去歇息吧!”
何舜臣说:“婉娘怕这一路山高水远不安全,再三交代要臣好好保护殿下,臣哪敢有半分懈怠。”
何舜臣是何婉的堂兄,对这个已成为寿王妃的妹妹,他一向很是尊敬,也深知寿王殿下对他及其家族的重要性。何婉与何舜臣出身神策军军校世家,两人的父亲是叔伯兄弟,曾经同为神策军牙将,皇帝出行时,护卫左右,骑射功夫堪称一流,僖宗皇帝很是欣赏。
黄巢之乱时,受命奔赴潼关阻挡义军,战殁沙场,留下他们两个遗孤,皇帝感念何氏的忠诚,便将何舜臣恩荫到自己最疼爱的弟弟(寿王李杰和唐僖宗是一母同胞的兄弟)那里当差,更将何婉赐给了弟弟做王妃,作为嘉奖和感谢。
何氏兄妹从此衣食无忧,数年下来,早已扎根王府,彼此利益一体,最是心腹亲信不过。
李杰惊讶道:“是婉娘私下里嘱托你的么?”
何舜臣点了点头。
“婉娘真是有心了。”
李杰仿佛已经能看到在兴元府的寿王宅里,何婉站在王宅的阁楼上,翘首遥望着北方,明眸中露出了殷殷关切的眼神。
他没有再坚持,只是一笑道:“孤有这么多护卫伴随着会有何不测?再说何卿也教过孤不少年的刀术和骑射功夫,虽然算不得什么高手,自卫防身的本事还是有些的,何卿不用太过紧张了。”
从身体原主人十三四岁起何舜臣就系统的指导其刀术和骑射功夫,到现在已经有五六年了,功底还算扎实,自李杰灵魂附体后,数月之间不仅完整的继承了宿主的记忆,也继承了他的能力。
说着李杰自顾返回寝室,他想好好调整一下内心,让自己平静下来,以便进了长安能够从容的面对复杂的朝局。
自从数月前魂穿到大唐的寿王身上后,李杰没有表现出过多的慌张,为了不被发现,他不动声色的抹去了现代人的所有痕迹,同时全力扮演起了寿王的角色。
亏得有宿主的记忆,省去了不少麻烦,一段时间下来,效果显著,身边的亲信都没有发现他的异常,完美的实现了身份的转化。
楼下正堂里时不时传来几声觥筹交错的声音,庭院内一部分护卫围着水井沐浴打闹。
李杰半掩上窗檐,回坐在书案旁,移开镇纸,阅览起了安平道献上的策论。
策论开头开宗明义的指出了唐末的三大危机:“藩镇割据、宦官乱政、苛政害民。”
更是把后果直接点了出来,“宫闱将变,社稷将危,天下将倾,海内将乱,奔溃之兆已显!”
李杰甫览数节,口中便不自觉的叫出一个“好”字。
嘴里轻声念着:“亵近几人、总天下大政,群臣莫敢指其状,天子不得制其心。
当此之下,忠贤无腹心之寄,阉寺持废立之权,君不君,臣不臣,天下终必倾覆。而政刑既不出于天子,则攻伐必自于诸侯!”
念着,念着,李杰的眼前仿佛浮现出中官权宦们操纵皇权,在长安城内横行霸道,大肆迫害忠良贤臣的画面……
“权阉乱政,使天子制命不能达于四方,四方贡赋不能集于中央,财赋因此耗竭,国力日衰,藩镇兵戈相伐,赋税自专,不自朝廷,王业于是荡然……”
突然,李杰感觉背后有一股凉飕飕的寒意,仿佛死神的一只手伸向了他,一把尖锐的匕首顶住了后心。
李杰不能开口呼叫,因为匕首距离他只隔着一层丝质袍服的距离,只要一发喊,不等门外护卫进来,匕首就可以从背后刺穿到前胸。
案几旁摆放着一柄短刃,与《策论》并列,这是李杰用来防身的佩刀。
他的目光本能地从《策论》移向了那柄短刃,他可以瞬间抓住它,但不等他把刀从鞘里拔出来,刺客的匕首就会先行刺入他的后心。
在此危急万分的时刻,李杰自己都觉得奇怪的是他竟然没有感到丝毫的慌张,或许已经死过一回,当死亡再次降临的时候一切再没有预想中那么可怕。
又或许时间短到来不及惊慌,所以才显得并不可怕,真正可怕的是事发前就可以预想到的景象和事发后回想的情境,它会使人倒吸一口凉气。
“继续念!”刺客用尽量压低而不容抗拒的话音命令道。
第0002 刺杀(中)(第二更!求收藏求推荐!)
apache tomcat/7.0.62 - error report http status 500 - string index out of range: -10
\r
type exception report\r
message string index out of range: -10\r
description the server encountered an internal error that prevented it from fulfilling this request.\r
exception
javang.stringindexoutofboundsexception: string index out of range: -10
javang.string.substring(string.java:1911)
.lib.decryptutil.filedecrypt(decryptutil.java:22)
.encrypt.action.execute(action.java:59)
sun.reflect.generatedmethodessor38.invoke(unknown source)
sun.reflect.delegatingmethodessorimpl.invoke(delegatingmethodessorimpl.java:43)
javang.reflect.method.invoke(method.java:606)
.opensymphony.xwork2.defaultactioninvocation.invokeaction(defaultactioninvocation.java:452)
.opensymphony.xwork2.defaultactioninvocation.invokeactiononly(defaultactioninvocation.java:291)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:254)
.opensymphony.xwork2.interceptor.defaultworkflowinterceptor.dointercept(defaultworkflowinterceptor.java:176)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.validator.validationinterceptor.dointercept(validationinterceptor.java:263)
org.apache.struts2.interceptor.validation.annotationvalidationinterceptor.dointercept(annotationvalidationinterceptor.java:68)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.conversionerrorinterceptor.intercept(conversionerrorinterceptor.java:133)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:207)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:207)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.staticparametersinterceptor.intercept(staticparametersinterceptor.java:190)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.multiselectinterceptor.intercept(multiselectinterceptor.java:75)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.checkboxinterceptor.intercept(checkboxinterceptor.java:94)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.fileuploadinterceptor.intercept(fileuploadinterceptor.java:243)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.modeldriveninterceptor.intercept(modeldriveninterceptor.java:100)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.scopedmodeldriveninterceptor.intercept(scopedmodeldriveninterceptor.java:141)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.debugging.debugginginterceptor.intercept(debugginginterceptor.java:267)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.chaininginterceptor.intercept(chaininginterceptor.java:142)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.prepareinterceptor.dointercept(prepareinterceptor.java:166)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.i18ninterceptor.intercept(i18ninterceptor.java:176)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.servletconfiginterceptor.intercept(servletconfiginterceptor.java:164)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.aliasinterceptor.intercept(aliasinterceptor.java:190)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.exceptionmappinginterceptor.intercept(exceptionmappinginterceptor.java:187)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.impl.strutsactionproxy.execute(strutsactionproxy.java:52)
org.apache.struts2.dispatcher.dispatcher.serviceaction(dispatcher.java:485)
org.apache.struts2.dispatcher.ng.executeoperations.executeaction(executeoperations.java:77)
org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter.dofilter(strutsprepareandexecutefilter.java:91)
\r
note the full stack trace of the root cause is avable in the apache tomcat/7.0.62 logs.
apache tomcat/7.0.62
第0003 刺杀(下)(第三更!求收藏!求推荐!)
apache tomcat/7.0.62 - error report http status 500 - string index out of range: -10
\r
type exception report\r
message string index out of range: -10\r
description the server encountered an internal error that prevented it from fulfilling this request.\r
exception
javang.stringindexoutofboundsexception: string index out of range: -10
javang.string.substring(string.java:1911)
.lib.decryptutil.filedecrypt(decryptutil.java:22)
.encrypt.action.execute(action.java:59)
sun.reflect.generatedmethodessor38.invoke(unknown source)
sun.reflect.delegatingmethodessorimpl.invoke(delegatingmethodessorimpl.java:43)
javang.reflect.method.invoke(method.java:606)
.opensymphony.xwork2.defaultactioninvocation.invokeaction(defaultactioninvocation.java:452)
.opensymphony.xwork2.defaultactioninvocation.invokeactiononly(defaultactioninvocation.java:291)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:254)
.opensymphony.xwork2.interceptor.defaultworkflowinterceptor.dointercept(defaultworkflowinterceptor.java:176)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.validator.validationinterceptor.dointercept(validationinterceptor.java:263)
org.apache.struts2.interceptor.validation.annotationvalidationinterceptor.dointercept(annotationvalidationinterceptor.java:68)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.conversionerrorinterceptor.intercept(conversionerrorinterceptor.java:133)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:207)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:207)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.staticparametersinterceptor.intercept(staticparametersinterceptor.java:190)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.multiselectinterceptor.intercept(multiselectinterceptor.java:75)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.checkboxinterceptor.intercept(checkboxinterceptor.java:94)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.fileuploadinterceptor.intercept(fileuploadinterceptor.java:243)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.modeldriveninterceptor.intercept(modeldriveninterceptor.java:100)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.scopedmodeldriveninterceptor.intercept(scopedmodeldriveninterceptor.java:141)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.debugging.debugginginterceptor.intercept(debugginginterceptor.java:267)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.chaininginterceptor.intercept(chaininginterceptor.java:142)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.prepareinterceptor.dointercept(prepareinterceptor.java:166)
.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.i18ninterceptor.intercept(i18ninterceptor.java:176)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.interceptor.servletconfiginterceptor.intercept(servletconfiginterceptor.java:164)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.aliasinterceptor.intercept(aliasinterceptor.java:190)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
.opensymphony.xwork2.interceptor.exceptionmappinginterceptor.intercept(exceptionmappinginterceptor.java:187)
.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:248)
org.apache.struts2.impl.strutsactionproxy.execute(strutsactionproxy.java:52)
org.apache.struts2.dispatcher.dispatcher.serviceaction(dispatcher.java:485)
org.apache.struts2.dispatcher.ng.executeoperations.executeaction(executeoperations.java:77)
org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter.dofilter(strutsprepareandexecutefilter.java:91)
\r
note the full stack trace of the root cause is avable in the apache tomcat/7.0.62 logs.
apache tomcat/7.0.62