严重: 在路径为[/JavawebFoodMarker]的上下文中,servlet[servelet.hMessageUpdateServelet]的Servlet.service()引发异常 java.lang.NumberFormatException: For input string: " 23 " at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68) at java.base/java.lang.Integer.parseInt(Integer.java:638) at java.base/java.lang.Integer.parseInt(Integer.java:770) at servelet.hMessageUpdateServelet.doGet(hMessageUpdateServelet.java:44) at servelet.hMessageUpdateServelet.doPost(hMessageUpdateServelet.java:90) at javax.servlet.http.HttpServlet.service(HttpServlet.java:681) at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:232) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:167) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:194) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:167) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:544) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:364) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:624) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1651) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:832)
时间: 2023-06-13 20:05:41 浏览: 119
这个异常是因为在调用 `Integer.parseInt()` 方法时,传入了一个非数字字符串。具体来说,是在 `servelet.hMessageUpdateServelet.doGet(hMessageUpdateServelet.java:44)` 这个方法中,第44行代码传入了一个值为 " 23 " 的字符串,这个字符串包含了一个或多个空格,导致无法转换为整数。你需要检查这个方法中的代码,找到这个传入 `Integer.parseInt()` 方法的字符串,并确保它只包含数字字符。
相关问题
org.apache.catalina.core.StandardWrapperValve invoke 严重: 在路径为[/JavawebFoodMarker]的上下文中,servlet[servelet.hMessageUpdateServelet]的Servlet.service()引发异常 java.lang.NumberFormatException: For input string: " 23 "
这个错误信息提示在一个名为“JavawebFoodMarker”的Web应用程序中,servlet“servelet.hMessageUpdateServelet”的服务方法中发生了一个NumberFormatException异常。异常的原因是在尝试将一个字符串转换成数字时,字符串的格式不正确。具体来说,字符串是“23”,但它的前后有空格,这导致转换失败。
你需要检查代码中处理该字符串的部分,确保在转换之前删除前后的空格。
Artifact 'servelet-starter:war': java.lang.NoClassDefFoundError: Could not initialize class sun.
这个错误通常是由于缺少相关的依赖或者类加载问题导致的。首先,你可以检查一下是否在项目的依赖中添加了正确的 Servlet API 依赖。如果没有添加,你可以在 Maven 或者 Gradle 配置文件中添加以下依赖:
对于 Maven:
```xml
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
```
对于 Gradle:
```groovy
compileOnly 'javax.servlet:javax.servlet-api:3.1.0'
```
如果已经添加了正确的依赖,但是仍然出现这个错误,那么可能是由于类加载问题导致的。你可以尝试清理和重建项目,以确保所有的类都能正确加载。
如果以上方法都没有解决问题,你可以提供更多的错误信息和相关的代码,以便我能够更准确地帮助你解决这个问题。
阅读全文