1 /*
2 * File: XsltView.java
3 * Created: 30.05.2007 12:09:19
4 *
5 * Copyright 2007 Michal Burda.
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22 package net.sf.webmancer.out.xslt;
23
24 import java.util.Map;
25
26 import javax.servlet.http.HttpServletRequest;
27 import javax.servlet.http.HttpServletResponse;
28 import javax.xml.transform.Source;
29 import javax.xml.transform.dom.DOMSource;
30
31 import net.sf.webmancer.model.dom.DOMModeler;
32
33 import org.springframework.web.servlet.view.xslt.AbstractXsltView;
34 import org.w3c.dom.Document;
35
36 /**
37 * @author Michal Burda
38 *
39 */
40 public class XsltView extends AbstractXsltView {
41 /**
42 *
43 */
44 public static final String DEFAULT_WEBMANCER_CONTENT_TYPE = "text/html; charset=UTF-8";
45
46 /**
47 * Constructs the XsltView.
48 *
49 */
50 public XsltView() {
51 super();
52 setContentType(DEFAULT_WEBMANCER_CONTENT_TYPE);
53 }
54
55 /**
56 * @see org.springframework.web.servlet.view.xslt.AbstractXsltView#createXsltSource(java.util.Map, java.lang.String, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
57 */
58 @Override
59 protected Source createXsltSource(Map model, String rootName, HttpServletRequest request, HttpServletResponse response) throws Exception {
60 Document document = (Document) model.get(DOMModeler.MODEL_OBJECT_NAME);
61 return new DOMSource(document);
62 }
63
64 /**
65 * @throws UnsupportedOperationException because setting the root is not supported
66 *
67 * @see org.springframework.web.servlet.view.xslt.AbstractXsltView#setRoot(java.lang.String)
68 */
69 @Override
70 public void setRoot(String root) {
71 throw new UnsupportedOperationException("Method setRoot() is not supported by " + this.getClass().getName());
72 }
73
74 }