私は組み込みのJava XML Transformerを使用してXML文書をテキストにシリアライズしています。私はHTMLモードで出力しているときに問題があります。「HTML」メソッドを使用してJava XMLトランスフォーマに<META>タグを追加しないようにするにはどうすればよいですか?
head
要素を挿入するたびに、内蔵トランスフォーマーはコンテンツタイプのデータでMETA
タグを挿入することを決定します。私はこのタグを自分のデータの中に入れたくないので、この機能を無効にする出力パラメータを見つけることができないようです。私はxsltスタイルシートを構築して問題のタグを取り除くことができますが、それを無効にするトランスフォーマ自体のパラメータを設定するだけで簡単になります。
あなたは本当にこのタグを持っているはずです - 私を信じて、私はそれを必要としません、簡潔さのために私はそれに入っていません。
サンプルコード
Document d;
//d = <html><head><title></title></head><body></body></html>
Transformer t; //properly inited with no xslt specified
t.setOutputProperty(OutputKeys.METHOD,"html");
t.setOutputProperty(OutputKeys.INDENT,"no");
t.transform(new DOMSource(d), result);
System.out.println(result);
戻り
<html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><title></title><style type="text/css"></style></head><body></body></html>
ポイントのケースは、私はそこにそのMETA
タグを望んでいません。可能な限り簡単に取り除くにはどうしたらいいですか?
UPDATE:
私は私が探しているものを行うことになっているオプション{http://xml.apache.org/xalan}omit-meta-tag
渡って実行しました。しかし、それは無視されているように見えます。
セット** XML **値として動作しているようです。 – adatapost
それは私がやっていることのためにhtmlにする必要があります – Mike
これはXSLTの[specs](http://www.w3.org/TR/xslt#section-HTML-Output-Method)による標準的な動作です。デフォルト以外の文字セットエンコードを使用している場合 –