2012-06-17 6 views
0

내 웹 사이트에 RSS 피드를 만들려고합니다. mkyong (http://www.mkyong.com/spring-mvc/spring-3-mvc-and-rss-feed-example/)의 튜토리얼을 참고하면 매우 유용합니다. 이 튜토리얼에 따르면 전 모델 클래스 다음의 클래스스프링 MVC로 RSS 피드와 아파치 타일

public class CustomRssViewer extends AbstractRssFeedView{ 


    @Override 
protected void buildFeedMetadata(){ 
     //some code 
    } 

    @Override 
protected List<Item> buildFeedItems(){ 
     //some code 
    } 


} 

그리고보기 rssViewer는 클래스 CustomRssViewer 속한 튜토리얼에 따라 최종적으로 컨트롤러 클래스를

@Controller 
    public class RssController { 

    @RequestMapping(value="/rssfeed", method = RequestMethod.GET) 
    public ModelAndView getFeedInRss() { 

      //set the RSS content 
      ModelAndView mav = new ModelAndView(); 
      mav.setViewName("rssViewer"); 
      mav.addObject("feedContent", items); 

      return mav; 

     } 

} 

만들고, 그래서 그것을 작성해야 Dispatcher 서블릿에서 다음 코드 줄을 사용하십시오.

<bean class="org.springframework.web.servlet.view.BeanNameViewResolver" /> 

<bean id="rssViewer" class="com.mkyong.common.rss.CustomRssViewer" /> 

내 문제는 내가 아파치 타일을 사용하고 있다는 것입니다. 그래서 rssViewer는 타일 정의로 향상되지 않았기 때문에 인식 할 수 없습니다. 그리고 나는 정말로 어떻게 할 수 있는지 모른다.

<definition name="rssViewer" template="?"> 
    <put-attribute name="title" value=""/> 
    <put-attribute name="content" value=""/> 
    </definition> 

템플릿에서 내가 방향을 선언하는 데 사용하는 템플릿에서 지금까지 넣어 - attribute.Because에서뿐만 아니라 선언 해야할지 모르겠어 예를 들어 나는 다음과 같이 뭔가를 작성해야 특정 JSP가 존재한다는 것입니다. 이런 식으로 뭔가 :

template="/WEB-INF/pages/mypage.jsp" 

또한 뷰 - 속성을 내가 선언해야 모르겠어요.

의견이나 응답에 대해 미리 감사드립니다.

답변

0

해당 예제의 BeanNameViewResolver와 함께 ContentNegotiatingViewResolver를 사용해야합니다. 이미 존재하는 BeanNameViewResolver의 order 속성을 1로 선언하고 새로운 ContentNegotiatingViewResolver의 order 속성을 0으로 설정하십시오.

그런 다음 적절한 RSS보기를 사용하도록 RSS. 그들은 원자,하지 RSS를 사용하는

<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"> 
    <property name="mediaTypes"> 
    <map> 
     <entry key="atom" value="application/atom+xml"/> 
     <entry key="html" value="text/html"/> 
     <entry key="json" value="application/json"/> 
    </map> 
    </property> 
    <property name="viewResolvers"> 
    <list> 
     <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"/> 
     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/WEB-INF/jsp/"/> 
     <property name="suffix" value=".jsp"/> 
     </bean> 
    </list> 
    </property> 
    <property name="defaultViews"> 
    <list> 
     <bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" /> 
    </list> 
    </property> 
</bean> 

참고하지만 아이디어는 동일합니다 : 여기

는 봄 문서 도구의 예입니다. 또한 그들은 명령 (당신이해야 할)을 설정하지 않습니다.

관련 문제