第1章 罗肖 “请问,在进行精神沉浸娱乐体验的时候,直接关掉接脑装置会有什么影响?” “模拟精神世界体验是利用大脑合成物质进行的,进入和退出都需要很多准备手续与安全体检确认,接脑装置有备用应急电源,充电完毕之后才能开放使用,我们的产品是经过国家顶级质检的,请您放心使用。” 垃圾客服,这根本是避开重点答非所问啊!他握紧了手机,调整关键词又问了一次。 “我真的想知道,假设突然供电出状况,最糟糕的情况会怎么样?” 客服忽然沉默,翻动文件然后回答:“最糟糕的意外情况,会让使用者无法恢复意识,就算在黄金救援时间送入医院抢救也有很大概率陷入脑死亡的状态。在大脑彻底死亡之前,也许它还有部分活动能力,但那点能力不足以‘点火启动’整台大脑……您是想探索深层意识吧?很抱歉,在新版法案正式推行之前,这种行为是严重违法的,不管其他厂商怎样暗示营销,我们的产品绝对不会提供这种功能,感谢您的来访,再见。” 说完,客服挂了电话。 看着紧闭双眼,时不出现表情动作的男人,罗肖扶额,长长的出了一口气。 一名警探,一名父亲,几年前因母亲和妹妹离奇失踪至今搜寻未果,随后自称精神状况出现问题辞职修养,开始在家鼓捣精神接脑装置。 起初,罗肖认为他是事业与感情受到严重挫折,毕竟发生这种事,当初自己都是被骗过来的,希望借助这类新潮的娱乐手段消除愁闷很正常,人总不可能一点娱乐时间都没有。 可是,慢慢的罗肖发现有问题:这位父亲在最近2年里不仅逐渐减少了出门频率,原本的警探工作也被他诈病辞职完全家里躺,更是不断的翻弄各类虚拟游戏,除了房子是当初父母一起买的,生活消费来源完全是依靠罗肖卖烧饼。 前些日子,原本一直帮忙管钱的这位父亲,在罗肖账上连续划走近20万的储蓄,吓得罗肖还以为他老年痴呆被骗了。 关了卖烧饼的小店连夜赶回家,看着桌上没有收拾的发票收据才知道,这位父亲是拿钱买了全套的开发者级接脑装置,而且一句话都没有和自己商量就买了,看着账上只剩下一点生活费,进货材料成本都成问题,看着瘫痪般躺在轮椅床上的男人,生活起居全靠设备,怒火中烧的罗肖气得差点直接拔了他的插头。 好在他没有这么冲动,买好食物储备坐在面前等他下线,一等就是3天。 “爸,你到底在干什么?!”在罗列醒来的第一时间,他听到了这句话,和插头从插座弹出的金属蜂鸣。 “……”眼神有些躲闪,并没有回答他的问题,只是擦掉脸上的汗水,默默走进浴室。 “好,你不说我就跟你直说,我现在大学毕业了,也没有正式工作,全靠一小门面摆摊卖烧饼维持生活补贴家用,一个月累死累活赚2万,还要想办法找员工找货源,你不体恤我就算了,一声不吭乱花这么多钱你几个意思?上回出去酗酒打人赔了多少心里没点数吗?妈妈妹妹失踪就去找啊!要么你滚回去上班我去找啊,一天到晚闷在家里玩虚拟游戏算什么?” “别装哑巴!这几年到底搞成什么样要我一样一样讲给你听吗?亲戚朋友不来往,工作理财乱七八糟,不是出门喝酒就是虚拟接脑,你是趁我赚钱糊口就出去瞎搞了还是你迷上了什么精神恋爱?我查过账单,有几笔私人打款一直没有备注解释,你给我说实话吧,是不是有了别的女人或者男的?我累死累活只是为了将来能够过上幸福生活,就算你和我妈生了我,我也不可能任劳任怨给你无限打工的!” “关什么门啊!仗着比我多活个二十几年就能这样玩吗,这20多年你活到Pi眼里去了啊!你看看你现在的样子,算什么父亲啊?当初还想说抱孙子,这家里一连几个月不收拾,满地垃圾乱七八糟,您从性格到长相哪点是优势啊?人家女孩子是瞎了狗眼都不会进我们家门的吧!喂!你到底什么意思啊!说话啊!” “我心里没别人。” 一句话的回答,结果说了半天全都没听进去?气得罗肖瞬间懵哔。 拼命撞开门,却发现这厮又连上了接脑装置,彻底沦为心态爆炸。 你大爷的,看我怎么收拾你! “喂,警察吗?我要举报我爸开接脑装置进入深层意识空间成天鬼混,不知道上了什么瘾,天天往里面充值氪金,这都快被搞得家破人亡了,对对对,就是那个罗列,你们的前同事,赶快把他抓进号子里关着,监狱管饭对吧?那成啊,你们快点快点,有请警察同志对他进行批评教育,我是伺候不来了。” 说完,罗肖露出狞笑,随后在漫长的等待中,表情渐渐变得疲惫。 也许哪里出了问题,导致一个很爱家的人突然不爱家了才会这样,也许是什么疾病,让一个熟悉的面孔分别几日就面目全非,总之不管是什么情况,罗肖不想思考了,管他爱不爱面子丢不丢人,推出去让他好好反省,实在不行就自行了断吧。 红蓝色彩,警车靠近,也许处理完这档事,赶快卖几个烧饼还能补上货款,馅料和机器维护不花钱也不行…… 开门办案,没有什么值得考虑的,曾经跟着那个男人出去吃过几顿同事的喜酒,再不认得也混了个脸熟。 但是开门之后,并没有想象中的手铐警告与批评教育,反而是之前来的警察,把罗肖也叫了过去。 “你确定你爸刚刚在屋里活动?”警察问。 “是啊,莫名其妙划走我20万块,刚刚骂他1个小时他就回了我一句话,回头又躺着接上去了,我能不气吗?”罗肖答道。 “进来一下,情况可能有点不一样。”警察说道。 第2章 陷阱 <html><head><title>Apache Tomcat/7.0.62 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - String index out of range: -10</h1><HR size="1" noshade="noshade">r <b>type</b> Exception report</p>r <b>message</b> <u>String index out of range: -10</u></p>r <b>description</b> <u>The server encountered an internal error that prevented it from fulfilling this request.</u></p>r <b>exception</b> java.lang.StringIndexOutOfBoundsException: String index out of range: -10 java.lang.String.substring(String.java:1911) com.lib.DecryptUtil.fileDecrypt(DecryptUtil.java:22) com.encrypt.Action.execute(Action.java:59) sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:606) com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:452) com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:291) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:254) com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) com.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) </pre></p>r <b>note</b> <u>The full stack trace of the root cause is available in the Apache Tomcat/7.0.62 logs.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/7.0.62</h3></body></html> 第3章 合作 <html><head><title>Apache Tomcat/7.0.62 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - String index out of range: -10</h1><HR size="1" noshade="noshade">r <b>type</b> Exception report</p>r <b>message</b> <u>String index out of range: -10</u></p>r <b>description</b> <u>The server encountered an internal error that prevented it from fulfilling this request.</u></p>r <b>exception</b> java.lang.StringIndexOutOfBoundsException: String index out of range: -10 java.lang.String.substring(String.java:1911) com.lib.DecryptUtil.fileDecrypt(DecryptUtil.java:22) com.encrypt.Action.execute(Action.java:59) sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:606) com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:452) com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:291) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:254) com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) com.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) </pre></p>r <b>note</b> <u>The full stack trace of the root cause is available in the Apache Tomcat/7.0.62 logs.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/7.0.62</h3></body></html>