1

<oxm:jaxb2-marshaller id="marshaller">
    <oxm:class-to-be-bound name="myclass"/>
</oxm:jaxb2-marshaller>

我不断收到异常:

java.lang.NoSuchMethodError:
org.springframework.http.MediaType.sortBySpecificity(Ljava/util/List;)V

这里有什么问题?整个堆栈跟踪:

2010-09-10 21:02:53 org.apache.catalina.core.StandardWrapperValve invoke

严重:servlet 默认的 Servlet.service() 抛出异常 java.lang.NoSuchMethodError: org.springframework.http.MediaType.sortBySpecificity(Ljava/util/List;)V at org.springframework.web.servlet.view.ContentNegotiatingViewResolver.getMediaTypes (ContentNegotiatingViewResolver.java:295) 在 org.springframework.web.servlet.DispatcherServlet.resolveViewName(DispatcherServlet.java:1091) 在 org.springframework.web.servlet.DispatcherServlet.resolveViewName(DispatcherServlet.java:1091) 在 org.springframework.web.servlet.view.ContentNegotiatingViewResolver.resolveViewName(ContentNegotiatingViewResolver.java:355)。 springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1040) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:798) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet. java:716) 在 org.springframework.web.servlet。FrameworkServlet.processRequest(FrameworkServlet.java:647) 在 org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:552) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:617) 在 javax.servlet .http.HttpServlet.service(HttpServlet.java:717) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206 ) 在 org.apache.catalina.core.ApplicationDispatcher 的 org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 的 org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)。 doForward(ApplicationDispatcher.java:374) 在 org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 在 org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:159) 在 org.tuckey. .web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141) 在 org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90) 在 org.tuckey.web.filters.urlrewrite.UrlRewriteFilter .doFilter(UrlRewriteFilter.java:417) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在 org. apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 在 com。springsource.insight.collection.tcserver.request.HttpRequestOperationCollectionValve.invoke(HttpRequestOperationCollectionValve.java:60) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve。在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 调用(ErrorReportValve.java:102) .coyote.http11.Http11Processor.process(Http11Processor.java:849) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) 在 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor .run(JIoEndpoint.java:379) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 在 java.lang.Thread.run(Thread.java:619)

4

2 回答 2

3

这是库版本不匹配的标志。您应该升级 spring,或者升级正在回复它的其他库。(或者可能降级其中任何一个)

于 2010-09-10T08:22:28.683 回答
0

你的意思是BeanNameViewResolver在你的viewResolvers列表中包括一个?或者,将其放入defaultViews列表中。我无法确切说明您希望视图分辨率如何发生。

<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
    <property name="mediaTypes">
        <map>
            <entry key="xml" value="#{subscribersXml.contentType}" />
        </map>
    </property>
    <property name="order" value="0"/>
    <property name="viewResolvers">
        <list>
            <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"/>
        </list>
    </property>
</bean>

参考:http ://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-multiple-representations

于 2010-09-10T04:45:06.663 回答