質問: 私のXMLのJAXB名前空間がデフォルトns1に設定されているのはなぜですか? NetBeansコンテキスト内のGlassFish 3.1.2サーバーでテストフェーズで正しく動作するNetBeans 7.2(Windows 7環境で!)を使用してWebアプリケーションからwarファイルをビルドしました。 `package-info.java` ファイル内の定義された名前空間は、正しくxmlファイルに追加されます。 しかし、Linuxマシン上の別々のGlassFishサーバーにwarファイルをデプロイすると、名前空間はpackage-info.javaファイルで定義されていないデフォルトのns1に設定されますか? 私は間違って何をしていますか? よろしく、 ジェラルド
回答: > xmlのJAXB名前空間がデフォルトns1に設定されているのはなぜですか? > > `ns1` is not the namespace but the prefix. The prefix is not significant. For example the following documents are all equivalent. The `foo` element is in the `FOO` namespace, and the `bar` element is in the `BAR` namespace. ``` ``**JAXB (JSR-222)** implementation is not required to use the prefix specified in the `@XmlSchema` annotation. **EclipseLink JAXB (MOXy)** does and recent versions of the JAXB RI appear to. The version/implementation of JAXB in NetBeans 7.2 appears to, while the version/implementation of JAXB that GlassFish 3.1.2 uses does not. Below is a link to an article that I wrote that goes into a little more detail and covers the `NamespacePrefixMapper` extension that may be useful here. * `` ```