系统起来,页面访问报空指针错.折腾了好几个小时.
原因是因为修改了model中的校验器,然后dorado控件存在bug导致参数丢失. type="range"丢掉了
导致启动ok 访问页面就报空指针错误.
解决思路:
先判断是eclipse的问题,还是代码的问题.
将程序部署到测试环境也报相同的错误,确定为程序的问题.
猜测是某个文件的修改导致,看了下svn的提交日志.各个文件逐一排查.
将soliTool.model.xml 退回到老版本,并且将删掉的java类加回来,页面能正常访问.
定位到这个文件的原因.
<PropertyDef name="start_hour">
<Property name="dataType">Integer</Property>
<Property name="required">true</Property>
<Validator type="range">
<Property name="maxValue">23</Property>
<Property name="minValue">9</Property>
<Property name="maxValueValidateMode">allowEquals</Property>
<Property name="minValueValidateMode">allowEquals</Property>
<Property name="resultMessage">小时区间为9~23</Property>
<Property name="runAt">both</Property>
</Validator>
</PropertyDef>
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.NullPointerException
at com.bstek.dorado.data.variant.DefaultVariantConvertor$DataTypeReference.convertFromObject(DefaultVariantConvertor.java:75)
at com.bstek.dorado.data.variant.DefaultVariantConvertor.toInt(DefaultVariantConvertor.java:124)
at com.bstek.dorado.data.variant.VariantUtils.toInt(VariantUtils.java:77)
at com.bstek.dorado.view.resolver.PageHeaderOutputter.output(PageHeaderOutputter.java:95)
at com.bstek.dorado.view.resolver.PageOutputUtils.outputHeader(PageOutputUtils.java:64)
at com.bstek.dorado.view.taglib.PageHeaderTag.doEndTag(PageHeaderTag.java:40)
at org.apache.jsp.login_jsp._jspx_meth_d_005fPageHeader_005f0(login_jsp.java:154)
at org.apache.jsp.login_jsp._jspService(login_jsp.java:72)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530)
at com.bstek.dorado.view.resolver.HtmlViewResolver.execute(HtmlViewResolver.java:250)
at com.bstek.dorado.web.resolver.AbstractTextualResolver.doHandleRequest(AbstractTextualResolver.java:128)
at com.bstek.dorado.web.resolver.WebContextSupportedController.handleRequestInternal(WebContextSupportedController.java:68)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at com.hupun.crm.global.SystemFilter.doFilter(SystemFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:140)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.NullPointerException
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:534)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:442)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530)
at com.bstek.dorado.view.resolver.HtmlViewResolver.execute(HtmlViewResolver.java:250)
at com.bstek.dorado.web.resolver.AbstractTextualResolver.doHandleRequest(AbstractTextualResolver.java:128)
at com.bstek.dorado.web.resolver.WebContextSupportedController.handleRequestInternal(WebContextSupportedController.java:68)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at com.hupun.crm.global.SystemFilter.doFilter(SystemFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:140)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.NullPointerException
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:907)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:840)
at org.apache.jsp.login_jsp._jspService(login_jsp.java:138)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
... 39 more
Caused by: java.lang.NullPointerException
at com.bstek.dorado.data.variant.DefaultVariantConvertor$DataTypeReference.convertFromObject(DefaultVariantConvertor.java:75)
at com.bstek.dorado.data.variant.DefaultVariantConvertor.toInt(DefaultVariantConvertor.java:124)
at com.bstek.dorado.data.variant.VariantUtils.toInt(VariantUtils.java:77)
at com.bstek.dorado.view.resolver.PageHeaderOutputter.output(PageHeaderOutputter.java:95)
at com.bstek.dorado.view.resolver.PageOutputUtils.outputHeader(PageOutputUtils.java:64)
at com.bstek.dorado.view.taglib.PageHeaderTag.doEndTag(PageHeaderTag.java:40)
at org.apache.jsp.login_jsp._jspx_meth_d_005fPageHeader_005f0(login_jsp.java:154)
at org.apache.jsp.login_jsp._jspService(login_jsp.java:72)
... 42 more
相关推荐
2. **异步加载**:使用`async`属性,脚本会异步加载,不会阻塞页面渲染,但执行顺序无法保证。 ```html <script async src="your-script.js"> ``` 3. **将JavaScript移到`<body>`底部**:最常见也是推荐的做法,将...
Nginx优化404报错页面 Nginx是一款流行的开源Web服务器软件,它提供了强大的功能和灵活的配置项,以满足不同的应用场景需求。但是,在生产环境中,如何优化404报错页面是一个非常重要的问题。本文将详细介绍如何...
### 关于iframe页面报错如何跳到框架显示 在网页开发过程中,经常遇到的一个问题是当嵌入在`iframe`中的内容出现错误时,如何让用户直接看到这个错误所在的框架或者跳转到一个特定的页面。这个问题涉及到前端...
也许有的中级前端知道type=text/template标签,所以在这里我就不解释他的用处了,你能找到我这里来,说明你已经遇到这个问题了....以上代码,HTML浏览器不能解析,报错. 怎么办? 我来教给你如何变相的让他认这个type.
WebBrowser控件是Windows Forms应用程序中用于嵌入网页浏览功能的一个关键组件,它允许开发者在应用内部集成浏览器功能。然而,当浏览的网页存在JavaScript或其他脚本语言的错误时,IE浏览器通常会在左下角显示一个...
8、修复自定义模式下,用户设置自定义文章页面报错. 9、修复自定义模式下,文章、产品详情页不显示设置的SEO内容. 10、修复自定义模式下购物车模块链接错误. 11、修复首页加载文章和产品模块出现access violation...
4. **性能优化**:404页面的加载速度同样重要,避免使用过多的图片或脚本导致加载时间过长。 在实际应用中,404页面的创建可以通过HTML、CSS和JavaScript实现,也可以利用CMS(内容管理系统)如WordPress、Joomla等...
但其在使用过程中也可能会遇到一些安全性和兼容性的问题,例如Iframe嵌入Excel Services页面时出现的“此内容不能显示在一个框架中”的报错。为了解决这一问题,我们需要深入了解相关知识点,包括Iframe嵌入、点击...
- IE:2、1、3(同时浏览器报错:tmpStr未定义) - **解决办法**:为了避免此类问题,可以将相关代码拆分为多个`<script>`标签,确保外部文件加载完成后再执行其他脚本逻辑。 通过以上分析可以看出,理解和掌握...
在使用Vue.js框架开发的项目中,打包后的静态文件部署到生产环境中时,遇到了页面刷新后报错“Unexpected token <”的问题。这个问题表明在解析index.html或者发生错误的页面时,解析器遇到了一个不符合预期的字符...
前端做一个服务器报错页,这样产品在小程序后台能看到这个页面的PV,UV 技术方案 因为业务庞大,所以我们不可能区在每个页面加上重新加载的逻辑。所以初步考虑使用全局重新加载。 需要解决的问题都有哪些? 首先...
在传统的表格或树形数据展示中,所有数据通常在初次加载时一次性加载到内存中,这可能导致页面加载速度慢,对用户来说响应时间长,特别是当数据集非常大时。而懒加载(也称为按需加载或延迟加载)解决了这个问题,它...
1. 加载html页面 2. 解析html页面(下载script/link等节点引用的资源,如js/css文件) 3. 触发DOMContentLoaded事件 4. 注入5+ API 5. 触发plusready事件 这样导致5+ API生效时间比较延后,在html中引用js执行之后...
做webview加载网页时,遇到一个问题,自带的webview错误页面不美观,于是自定义一个view提示用户,网上很多方法,也不稳定实现替换,结合网上的一些例子,加以优化和拓展,特此写一个完整版本的Demo供大家拿来直接...
- **JavaScript执行时机**:`setHTML()`通常是在页面加载完成后通过JavaScript调用来执行的,如果页面加载顺序出现问题,则可能导致设置失败。 **2. 代码示例分析** 在给定的代码片段中,我们可以看到几种尝试解决...
在很多场景下,它被用来实现页面的部分刷新或者加载外部资源,例如在当前页面中嵌入一个登录窗口、广告等。然而,由于浏览器的安全策略,不同的源(origin)之间存在同源策略,阻止了不同域的iframe与父页面直接通信...
在实际项目开发中,我们常常会用到Vue Router来处理应用的路由管理,以便实现页面间的导航和状态管理。然而,有时候在搭建Vue Router时可能会遇到"router.map is not a function"这样的错误,这通常是由于版本不兼容...
在这个页面的基础上要加载utils.js,所以按照之前大神的写法就写成这样var j = require("../../utils/utils.js"); 但...但就是报错。代码一样的就是错!!! 弄了许久才弄好,特记录下来 var j = require("../../.....
vConsole.min.js是vConsole库的压缩版本,具有较小的文件体积,有利于减少页面加载时间和优化性能。这个轻量级的插件可以在不影响用户界面的情况下,为开发者提供一个模拟的Chrome开发者工具面板,支持查看日志、...
9. 在处理JavaScript报错问题时,除了检查文档类型声明,还需要确保引用外部JavaScript文件时页面已加载完成。有时候需要在JavaScript文件加载完成后刷新页面,以确保脚本正确执行。 10. 由于技术原因,如OCR扫描...