1

アプリケーションで Java サーブレットと JSP を使用しており、リモート XML ファイルを読み取って HTML に適切にレンダリングし、Web ページに表示する必要があります...読み取りプロセスに使用されるテクノロジは何ですか? HTTPURLConnection クラスを使用してxml ファイルの内容を読み取るか、他の方法がありますか? また、サーブレットをコントローラーとして使用し、JSP をビューとして使用する場合、このプロセスでサーブレットと JSP の責任はどうなるでしょうか?サーブレットは XML ファイル全体を読み取ってから、読み取った出力を JSP に渡して、出力するだけにする必要があります。たとえば、XSLを使用して適切にレンダリングしますか?

助けてくれる人からの連絡を本当に望んでいます、

敬具

4

1 に答える 1

3

JSP はここで責任を負いません。XSL を使用してサーブレットで XML を変換し、その結果をOutputStream応答の に直接書き込むだけです。

StreamSource xml = new StreamSource(new URL("http://external.com/file.xml").openStream());
StreamSource xsl = new StreamSource(new File("/path/to/file.xsl"));
StreamResult out = new StreamResult(response.getOutputStream());

try {
    Transformer transformer = TransformerFactory.newInstance().newTransformer(xsl);
    transformer.transform(xml, out);
} catch (TransformerException e) {
    throw new ServletException("Transforming XML failed.", e);
}

Content-Typeusingを設定することを忘れないでください。そうしないとHttpServletResponse#setContentType()、Web ブラウザーがプレーンテキストとして処理する可能性があります。

于 2010-05-15T13:03:13.343 に答える