EclipseでXMLファイルを新規作成する時に利用するDTDの追加方法

MyBatisを使って開発する時、テンプレートを適用した状態でMapper XMLファイルを新規作成したかったので、その設定方法について調査しました。

環境

  • STS4 :4.3.2.RELEASE (Eclipse: 2.2.600.v20190605-1800)

DTDの登録方法

メニューバーの「ウィンドウ」→「設定」から設定ダイアログを表示します。
ツリーの「XML」→「XML カタログ」からXMLカタログ画面を表示します。

「追加」ボタンを押下してAdd XML Catalog Elementダイアログを表示し、「カタログ・エントリー」タブのフォームに以下を入力します。

  • ロケーション:DTDの場所(URL)
  • 鍵のタイプ:パブリック ID
  • キー:PUBLICの後ろの"“で囲われた部分

MyBatisの場合、!DOCTYPEタグに記述する内容を参考に、上記画像のように入力します。

<!DOCTYPE mapper
  	PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

「OK」ボタンを押下して、登録します。

XMLファイルの新規作成

メニューバーの「ファイル」→「新規」→「その他」で開かれるダイアログから、「XML ファイル」を選択します。
「次からXMLファイルを作成」で「DTDファイルからXMLファイルを作成」を選択します。

「DTDファイルの選択」で、先ほど登録したXMLカタログ・エントリーを選択します。

「ルート要素の選択」で任意の設定を行い、「完了」ボタンを押下します。

これで下記のような内容でXMLファイルが作成されます。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper>
  <cache-ref namespace=""/>
</mapper>