【发布时间】:2018-03-24 19:08:01
【问题描述】:
嗨,我是 Spring MVC 的新手。我正在 Spring MVC 中开发一个简单的表单,其中出现以下错误。两天以来,我一直在努力解决这个问题,但无法解决这个问题。请帮我解决这个问题,以便我可以取得进一步的进展。我认为这是由于任何 jar 文件但无法得到正确的答案。以下是我正在使用的罐子:
aopalliance-1.0.jar
commons-dbcp-1.1-rc2.jar
commons-logging-1.2.jar
commons-pool-1.1.jar
javax.servlet-api-3.1.0.jar
jstl-1.2.jar
spring-aop-4.2.0.RELEASE.jar
spring-beans-3.0.5.RELEASE.jar
spring-context-3.1.1.RELEASE.jar
spring-core-4.2.2.RELEASE.jar
spring-expression-4.2.2.RELEASE.jar
spring-web-4.2.2.RELEASE.jar
spring-webmvc-3.0.0.RELEASE.jar
如果需要,我可以发布完整的代码。请告诉我。
<Oct 12, 2017 11:40:32 PM IST> <Error> <HTTP> <BEA-101216> <Servlet: "SM_FormHandling" failed to preload on startup in Web application: "SM_FormHandling".
java.lang.NoSuchMethodError: org.springframework.core.io.ResourceEditor.<init>(Lorg/springframework/core/io/ResourceLoader;)V
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:117)
at javax.servlet.GenericServlet.init(GenericServlet.java:240)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:337)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:288)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
Truncated. see log file for complete stacktrace
>
<Oct 12, 2017 11:40:32 PM IST> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID "169334801172819" for task "29". Error is: "weblogic.application.ModuleException: java.lang.NoSuchMethodError: org.springframework.core.io.ResourceEditor.<init>(Lorg/springframework/core/io/ResourceLoader;)V"
weblogic.application.ModuleException: java.lang.NoSuchMethodError: org.springframework.core.io.ResourceEditor.<init>(Lorg/springframework/core/io/ResourceLoader;)V
at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:216)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:211)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42)
Truncated. see log file for complete stacktrace
Caused By: java.lang.NoSuchMethodError: org.springframework.core.io.ResourceEditor.<init>(Lorg/springframework/core/io/ResourceLoader;)V
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:117)
at javax.servlet.GenericServlet.init(GenericServlet.java:240)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:337)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:288)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
Truncated. see log file for complete stacktrace
StudentController.java
@Controller
class StudentController {
@RequestMapping(value="/student" ,method=RequestMethod.GET)
public ModelAndView student(){
return new ModelAndView("student","command",new Student());
}
@RequestMapping(value="/addStudent" ,method=RequestMethod.POST)
public String addStudent(@ModelAttribute("SpringWeb")Student student,ModelMap model){
model.addAttribute("name",student.getName());
model.addAttribute("age",student.getAge());
model.addAttribute("id",student.getId());
return "result";
}
}
【问题讨论】:
-
使用相同版本(Spring)的 jars 忽略 Web 应用程序开发中的兼容性问题,或使用 Maven。并显示 Controller 类的一些额外代码。
-
添加了 studentcontroller.java。当只包含 jar 文件比在 POM.xml 中需要 maven 依赖时简单??
-
好像是版本兼容错误,不想使用maven的请使用所有jar的最新版本。至少从maven网站mvnrepository.com下载最新版本的jars
-
停止混合 Spring 版本,您正在混合 Spring 3.0.0、3.0.5、3.1.1、4.2.0 和 4.2.2 的 jar。当然行不通。这已经表明需要像 maven 或 gradle 这样的东西,你不需要寻找合适的 jars 和相关版本。有了它,您只需要声明对
spring-webmvc的依赖关系,所有其他相关/需要的 jar 都会自动添加。
标签: java spring spring-mvc servlets jar