1

Java 웹에서 JSON을 사용하려고합니다. JSONArray.fromObject()를 호출하여 JSONArray에 목록을 변환, 내 주장이 옳다고 확신하지만, 다음과 같은 예외를 던져 :Json : java.lang.ClassNotFoundException

java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) 
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733) 
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) 
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) 
    at org.vclub.model.json.Page2Json.getJsonFromList(Page2Json.java:10) 
    at org.vclub.controller.TopicController.loadMoreTopic(TopicController.java:70) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:185) 
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126) 
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:100) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:502) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:465) 
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80) 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:863) 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792) 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:851) 
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:767) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Thread.java:619) 

BTW, 구글 답변에서 학습, 내가 추가 한 필요 libs가.

commons-beanutils-1.8.3.jar 
commons-collections-3.2.1.jar 
commons-lang3-3.1.jar 
commons-logging-1.1.2.jar 
ezmorph-1.0.6-sources.jar 

여전히 작동하지 않습니다. 도와주세요. 사전에 덕분에

+1

이'NestableRuntimeException'가 될 것으로 보인다 평민 랭 버전을 사용해야 함을 의미한다. jar 파일을 클래스 경로에 올바르게 추가했는지 확인하십시오. – Henrik

+0

코드를 보지 않고 무엇이 잘못되었는지 알아내는 데 도움이 될 것이라고 기대하는 방법은 무엇입니까? – mthmulders

답변

3

확인 :

http://json-lib.sourceforge.net/

당신은 클래스 패스에 commons-lang 2.5이 필요합니다. 현재 org.apache.commons.lang. 패키지가 없지만 org.apache.commons.lang3. 패키지를 가지고있는 commons-lang3-3.1.jar이 있습니다.

클래스 경로에 commons-lang 2.5 또는 2.6을 추가하면 올바르게 작동합니다.

+0

감사합니다. 대답은 도움이된다. – user1550968

0

여기에 문제가 있다고 생각합니다 : commons-lang3-3.1.jar. (랭 3.0 (이후 버전) 이전 버전 보다 다른 패키지 (org.apache.commons.lang3)을 사용하는 것이

참고 : 당신은 평민 랭 버전 3이 home page of commons lang을 보라 추가 org.apache.commons.lang)

이는 아마`commonons - 랭 x.jar`에 2

관련 문제