[SPRING] 컨트롤러에서 JAXB 및 Spring @ResponseBody를 사용하여 올바른 사이트 맵 네임 스페이스를 생성하는 방법은 무엇입니까?
SPRING컨트롤러에서 JAXB 및 Spring @ResponseBody를 사용하여 올바른 사이트 맵 네임 스페이스를 생성하는 방법은 무엇입니까?
네임 스페이스를 올바르게 만들 수 없다는 점을 제외하면 모든 것이 잘 작동합니다. 어떤 도움이라도 대단히 감사합니다!
내 컨트롤러 :
@Controller
@RequestMapping("/sitemap")
public class SitemapController
{
public @ResponseBody XMLURLSet getSitemap(){
XMLURLSet urlSet = new XMLURLSet();
//populate urlList
urlSet.setUrl(urlList);
return urlSet;
}
}
내 url 세트 :
@XmlRootElement(name = "url")
public class XMLURL {
String loc;
@XmlElement(name = "loc")
public String getLoc(){
return loc;
}
public void setLoc(String loc){
this.loc = loc;
}
}
내 URL 요소 :
@XmlRootElement(name = "urlset", namespace = "http://www.sitemaps.org/schemas/sitemap/0.9")
public class XMLURLSet{
List<XMLURL> url;
public List<XMLURL> getUrl(){
return url;
}
public void setUrl(List<XMLURL> url){
this.url = url;
}
}
내가 생성 될 것으로 예상되는 것 :
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
</url>
생성 된 내용 :
<ns2:urlset xmlns:ns2="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
</url>
</ns2:urlset>
</urlset>
감사!
해결법
-
==============================
1.@XmlSchema 주석을 사용하여 elementFormDefault가 규정 된 요소를 지정할 수 있습니다. 이것은 유스 케이스에 도움이 될 것입니다.
@XmlSchema 주석을 사용하여 elementFormDefault가 규정 된 요소를 지정할 수 있습니다. 이것은 유스 케이스에 도움이 될 것입니다.
@XmlSchema( namespace = "http://www.sitemaps.org/schemas/sitemap/0.9", elementFormDefault = XmlNsForm.QUALIFIED) package example; import javax.xml.bind.annotation.XmlNsForm; import javax.xml.bind.annotation.XmlSchema;
자세한 내용은
from https://stackoverflow.com/questions/8402575/how-to-generate-the-correct-sitemap-namespace-using-jaxb-and-spring-responsebod by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring에서 일반적인 인터페이스를 구현하는 모든 bean 가져 오기 (0) | 2019.02.23 |
---|---|
[SPRING] Spring을 사용한 정확한 요청 매핑 (0) | 2019.02.23 |
[SPRING] 커스텀 cxf 인터셉터에서 Spring Autowired를 사용하는 방법? (0) | 2019.02.23 |
[SPRING] @PropertySource 및 UTF-8 특성 파일 (0) | 2019.02.23 |
[SPRING] Spring에서 config 속성을 삽입하는 방법 Spring에서 다시 시도 주석을 재 시도 하시겠습니까? (0) | 2019.02.23 |