2013-07-12 12 views
11

HTML'yi Spring MVC denetleyicime döndürmeye çalışırken bir sorunla karşılaşıyorum.Spring MVC denetleyici dönüşü HTML

Bu şuna benzer:

@RequestMapping(value = QUESTION_GROUP_CREATE_URL, method = RequestMethod.POST) 
public 
@ResponseBody 
String createQuestionGroup(@RequestBody JsonQuestionGroup questionGroup, HttpServletResponse response) { 

    // questionGroup - this comes OK. 

    response.setContentType("text/html"); 
    response.setCharacterEncoding("UTF-8"); 
    return "<div></div>"; 
} 

Benim Bahar yapılandırma:

<bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean"> 
    <property name="favorPathExtension" value="false"/> 
    <property name="favorParameter" value="true"/> 
    <property name="mediaTypes"> 
     <value> 
      json=application/json 
      xml=application/xml 
      html=application/html 
     </value> 
    </property> 
</bean> 

Ben tepki gibi geldiğini kundakçı görüyorum: {"String":"<div></div>"} nasıl olarak bana düz HTML göndermek için bu yöntemi söyleyebilir cevap?

+0

Bu özellikle iyi bir fikir değildir. – NimChimpsky

+1

Lütfen neden daha spesifik olabilirsiniz? – user2219247

+0

Daha kolay ne buluyorsunuz - Java içinde gömülü html düzenleme veya sadece normal bir html/jsp dosyası mı düzenliyorsunuz? – NimChimpsky

cevap

19

Spring yapılandırmanızı şu şekilde değiştirin: html=text/html ve produces = MediaType.TEXT_HTML_VALUE numaranızı @RequestMapping ek açıklamasına ekleyin.

+0

Bu benim için çalışıyor. Teşekkürler. – user2219247

+3

yayının eski bir sürümünü kullanmanız gerekiyorsa, bu 'response.setContentType (" text/html "); response.getWriter(). println (...) '' ResponseBody 'açıklamasını bırakın. –

+0

, @RequestMapping açıklamasını = MediaType.TEXT_HTML_VALUE ekledi ve çalıştı. Spring konfigürasyonunu sağlamak zorunlu mudur? evet ise sağlanacak yer neresi? – arvindwill