タグ

jaxbに関するyukimori_726のブックマーク (3)

  • Javaを使ってBOM付きUTF-8でハマる - Gobble up pudding

    Javaのサーバアプリにクライアント側からPOSTで文字列でXMLを送りつけたらXMLの解析時にパースエラーになって1時間ほどハマった時の話。 結論を先に言いますと、BOM付きのまま文字列としてサーバに送信してしまったのでJAXBでコケた。ということです。対策としてはファイルをBOMなしにしました。 当初Python内で文字列を書いてそれをJavaのサーバアプリ側にPOSTしていたときは問題が起こらなかったが、XMLファイルをあらかじめつくっておいてそれをPythonで読み込んでPOSTしたときにエラーになってしまった。 XMLのパースにつかっていたライブラリはJAXBというもの。 // クライアントからPOSTで受け取ったXML文字列をパース JAXBContext jaxbContext = JAXBContext.newInstance(Foo.class); Foo foo = (

    Javaを使ってBOM付きUTF-8でハマる - Gobble up pudding
  • JAXBでJavaクラスからXML schema生成 - torutkのブログ

    Java SE 標準APIのJAXBを使うと、Javaのインスタンスの内容をXML形式で出力したり、逆にXMLファイルからJavaのインスタンスを生成することができます。 JAXBは最初、XML Schema定義からJavaクラスを生成し、そのクラスを利用して実行時にJavaインスタンスとXML文書のマッピングをする機能が提供されました。その後のバージョンで、Javaクラス定義*1からJavaインスタンスとXML文書のマッピングをする機能が提供されました。そのためもあってか、解説記事は大半がXML Schema定義からJavaクラスを生成するものとなっています。 今回、Javaクラス定義からXML文書とマッピングするために必要な流れを、一歩一歩試しながら理解したいと思います。 なお、Javaクラス定義からXML文書とマッピングさせる場合、XML Schemaを生成する必要はありませんが、生

    JAXBでJavaクラスからXML schema生成 - torutkのブログ
  • 「Java SE 6完全攻略」第73回 JAXB その1

    今月から再びJava SE 6完全攻略に戻りましょう。 4月にはJava SE 6におけるXMLに関する新機能ということで,StAXを紹介しました。今月もXMLに関する新機能であるJava Architecture for XML Binding,通称JAXBを紹介します。 JAXBはJava SE 6より一足早く,Java EE 5で採用されていたので,ご存じの方も多いはずです。 JAXBを説明する前に,XMLを用いてデータ交換を行なう場合について考えてみましょう。 通常,JavaのアプリケーションでXMLドキュメントを扱う場合,XMLドキュメントをパースし,パースした内容をアプリケーションで扱いやすいオブジェクトに変換します。 たとえば,次のような名前を表すXMLがあったとします。

    「Java SE 6完全攻略」第73回 JAXB その1
  • 1