2012-02-22 11 views
0

私は私のポンポンファイルに出力JSONとXML応答に春のMVC 3.1を取得するために必要な最小限のは何ですか?

 <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-oxm</artifactId> 
      <version>3.1.0.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>com.thoughtworks.xstream</groupId> 
      <artifactId>xstream</artifactId> 
      <version>1.4.2</version> 
     </dependency> 

をスプリングOXMとXStreamの両方を含め、フォローは私のSpring MVCの設定ファイルであるXMLのも私のポンポンファイルに

 <dependency> 
      <groupId>org.codehaus.jackson</groupId> 
      <artifactId>jackson-mapper-asl</artifactId> 
      <version>1.9.2</version> 
     </dependency> 

をジャクソン・マッパーが含まれている:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xmlns:mvc="http://www.springframework.org/schema/mvc" 
     xmlns:oxm="http://www.springframework.org/schema/oxm" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd 
      http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
      http://www.springframework.org/schema/oxm http://www.springframework.org/schema/oxm/spring-oxm-3.0.xsd"> 


    <mvc:resources mapping="/static/js/**" location="/static/js/"/> 
    <mvc:resources mapping="/favicon.ico" location="/favicon.ico"/> 

    <mvc:annotation-driven /> 
    <context:component-scan base-package="com.xyz.web.controllers"/> 

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/WEB-INF/views/"/> 
     <property name="suffix" value=".jsp"/> 
    </bean> 
</beans> 

そして私は、JSONまたはXML応答を取得しようとした時はいつでも、私はこの

を得ました
DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolving exception from handler [public com.xyz.web.controllers.User com.xyz.web.controllers.UserController.get(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)]: org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation 

すべてのヘルプは大歓迎です!

+1

この投稿は参考になりました http://blog.springsource.org/2010/01/25/ajax-simplifications-in-spring-3-0/ –

+0

よく、その投稿に基づいてjsonのシリアル化が有効になっていますクラスパスにJacksonが存在するmvc:注釈駆動型設定要素を使用すると自動的に "私は両方の基準を満たしていると確信しています。 – Bobo

答えて

0

Spring-Json-Viewをチェックし、spring-mvcjsonを使用することは非常に非常に簡単になり、また、あなたのコントローラのメソッドには何の注釈を持っていますXstream

0

のデフォルトサポートしています。

私は、次のしていると、すべてが順調である:私はちょうど@ResponseBodyを追加し、私のPOMファイルにジャクソンの依存関係を追加し、

::私がやったこと

@RequestMapping("carrierCompanies_json") 
@ResponseBody 
public Map<String, String> getValuesAsJSON() { 
    return shipperService.getInfoForUser(getUser()); 
} 
0

は、ということです

@RequestMapping(value = "/test", method = RequestMethod.GET) 
@ResponseBody 
public Map<String, String> getTestValue() { 
    Map<String, String> map = new HashMap<String, String>(); 
    map.put("1", "dfd"); 
    map.put("2", "dfd"); 
    map.put("3", "dfd"); 
    map.put("4", "dfd"); 
    return map; 
} 
{ "1": "DFD"、 "2": "DFD"、

そして私は、期待される結果を得ました"3": "dfd"、 "4": "dfd" }

ところで、私はspring mvc 3.1を使用します。

は、私は春のMVC 3.1を使用する前に、私は3.0を使用して、私は上記をしたとき、私はまた、.x​​mlファイルに以下を追加する必要がありました:

<beans:bean id="stringHttpMessageConverter" 
    class="org.springframework.http.converter.StringHttpMessageConverter" /> 

<beans:bean id="jsonHttpMessageConverter" 
    class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" /> 

<beans:bean id="methodHandlerExceptionResolver" 
    class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerExceptionResolver"> 
    <beans:property name="messageConverters"> 
     <beans:list> 
      <beans:ref bean="stringHttpMessageConverter" /> 
      <beans:ref bean="jsonHttpMessageConverter" /> 
     </beans:list> 
    </beans:property> 
</beans:bean> 

私はこれがあなたを助け願っています。

関連する問題