`

Struts2 json jar 冲突

    博客分类:
  • java
阅读更多

今天做一个项目(ssh)的时候遇到“java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lang/String;)Ljava/lang/Object;”异常,导致该异常的是jsonplugin的jar包与Struts2的jar包不匹配引起的。

 

具体的报错是

严重: Servlet.service() for servlet default threw exception
java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lang/Object;)Ljava/lang/Object;
 at com.googlecode.jsonplugin.JSONResult.execute(JSONResult.java:104)
 at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265)
 at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:163)
 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249)
 at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:148)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:93)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:128)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(ProfilingActivationInterceptor.java:104)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:148)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:128)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
 at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:468)
 at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
 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:128)
 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:286)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
 at java.lang.Thread.run(Unknown Source)

 

 最后才知道:

jsonplugin-0.33.jar     Struts 2 JSON Plugin 0.33 匹配 Struts 2.1.x Compatible
jsonplugin-0.32.jar     Struts 2 JSON Plugin 0.32 匹配 Struts 2.0.x Compatible

我自己用的Struts 2.0.x ,所以必须用 jsonplugin-0.32.jar 

分享到:
评论

相关推荐

    struts2所有jar包程序文件

    7. `struts2-json-plugin.jar`:这个插件支持JSON数据格式的输入和输出,便于前后端交互。 8. `struts2-tiles-plugin.jar`:Tiles是用于页面布局的框架,此插件允许Struts2使用Tiles来组织和管理视图。 9. `struts...

    struts2使用json时要添加的jar包

    1. **struts2-json-plugin-x.x.x.jar**: 这是Struts2的JSON插件,包含了处理JSON请求和响应的核心类。这个插件负责将Action的结果转换为JSON格式,使前端能够解析。 2. **json-lib-x.x.x-jdk15.jar**: JSON库,如...

    struts-json-plugin-2.1.8.jar struts2-junit-plugin-2.1.8.jar json-lib-2.1.jar

    首先,我们来看`struts-json-plugin-2.1.8.jar`,这是Struts2的JSON插件,它允许Struts2的动作类直接返回JSON格式的数据,方便前端进行Ajax请求处理。该插件在2.1.8版本中修复了若干bug,并提供了对JSON输出的支持。...

    struts2和json的jar包

    2. `struts2-json-plugin.jar`: 这个插件提供了对JSON的支持,允许Struts2动作直接返回JSON格式的结果。 3. `json-lib.jar` 或 `org.json.jar`: JSON库,用于解析和生成JSON对象。Struts2可以使用这些库将Java对象...

    struts2 开发jar包汇总

    `struts2-json-plugin.jar`则用于处理JSON格式的请求和响应,便于前后端交互。 3. **依赖库**:Struts2依赖于其他一些开源库,如`ognl.jar`是Object-Graph Navigation Language的实现,用于对象属性的访问和表达式...

    struts2的jar包

    6. `struts2-json-plugin.jar` 或 `struts2-dojo-plugin.jar` 等:这些是特定的插件,用于支持JSON或Dojo等前端技术,增强与客户端的交互。 7. `struts2-spring-plugin.jar`: 如果你使用Spring框架,这个插件可以...

    struts2必要jar包

    6. **插件架构**:Struts2拥有强大的插件支持,如Struts2-dojo-plugin用于增强AJAX功能,Struts2-json-plugin用于JSON数据交互,这些插件大大扩展了Struts2的功能。 7. **异常处理**:Struts2提供了一套完整的异常...

    struts2全部jar包

    2. **插件和扩展**:Struts2提供了一系列插件,用于支持各种功能,如struts2-convention-plugin.jar(约定优于配置)、struts2-json-plugin.jar(JSON支持)等。 3. **依赖库**:Struts2依赖于许多其他的Java库,如...

    json使用jar包

    在本主题中,我们将深入探讨如何使用JSON相关的jar包,特别是针对与Struts2框架整合时可能遇到的jar包冲突问题。 首先,我们最常使用的JSON库有Jackson、Gson、org.json和Apache的json-smart等。在描述中提到的是...

    struts2.0所有jar包

    7. **其他插件**:可能包括各种扩展和插件,例如JSON、Spring集成、Tiles等,这些都以单独的jar形式存在,如`struts2-json-plugin.jar`、`struts2-spring-plugin.jar`等。 使用这些jar包时,你需要将它们添加到项目...

    Struts2 + jQuery+JSON 实现ajax

    ### Struts2 + jQuery + JSON 实现Ajax 在现代Web开发中,Ajax技术因其能够实现网页的局部刷新而被广泛采用。本篇文章介绍如何利用Struts2框架结合jQuery与JSON来构建一个简单的Ajax功能。 #### 一、环境搭建 1. ...

    struts2必备jar

    例如,`struts2-json-plugin-x.x.x.jar`用于JSON响应,`struts2-freemarker-plugin-x.x.x.jar`用于Freemarker模板引擎。 3. **Dependency Jars**: Struts2依赖于一些第三方库,如OGNL(Object-Graph Navigation ...

    Struts2相关jar包

    7. **struts2-json-plugin.jar**:JSON插件使得Struts2可以方便地处理JSON格式的数据,支持JSON的输入输出。 8. **struts2-tiles-plugin.jar**:Tiles是另一个流行的视图管理框架,Struts2的这个插件整合了Tiles,...

    JAVA struts2的jar包

    还有`struts2-json-plugin.jar`,用于支持JSON数据格式的输入和输出,方便前后端交互。 3. **依赖库**:Struts2依赖于其他开源库,如`ognl.jar`(Object-Graph Navigation Language),它是Struts2的表达式语言,...

    Struts2框架核心jar包

    这个"Struts2框架核心jar包"是Struts2框架的核心组件,包含了实现Struts2功能所必需的类库和资源。 1. **Struts2框架结构**: - **Action**:Struts2的核心是Action类,它是业务逻辑处理的主要载体。用户请求被...

    struts2 jar包

    6. **struts2-json-plugin.jar**:用于支持JSON格式的数据交换,方便前后端的Ajax交互。 描述中重复提及"struts2 jar包",暗示了这些文件对于理解Struts2框架的重要性。在实际项目中,开发者需要将这些JAR包添加到...

    json依赖jar

    然而,在某些情况下,Struts2自身可能并不包含完整的JSON处理功能,或者其内置的JSON支持与其他库存在冲突,这就需要引入专门处理JSON的JAR包来解决这个问题。 解决与Struts2 JAR包冲突的关键在于正确管理和配置...

    struts使用ajax返回json数据所需jar包

    很多人在实现struts使用ajax返回json数据的时候,明明代码没有错误但是没有得到结果,其实有可能是jar包冲突或者少了,这里我分享ssh的所有jar包,可以直接部署使用,如果部署有问题的可以看下我的说明文档,本来想...

    struts2 jar文件

    2. **插件**:Struts2支持许多插件来扩展其功能,例如struts2-convention-plugin.jar用于自动映射Action和结果,struts2-dojo-plugin.jar提供与Dojo JavaScript库的集成,struts2-json-plugin.jar则支持JSON数据交互...

Global site tag (gtag.js) - Google Analytics