2012-11-30 158 views
1

我在我的jaxB類生成了一些對象衝突,我知道我可以做的事情就像使用自定義綁定文件來解決衝突然而,這種衝突發生在兩個單獨的文件中具有相同名稱的元素之間使用不同的名稱空間。不應該有他們有不同命名空間的事實足夠嗎?jaxB命名空間之間的衝突

parsing a schema... 
compiling a schema... 
[ERROR] A class/interface with the same name "code.NameType" is already in use. Use a class customization to resolve this conflict. 
    line 215 of file:/C:/Workspace/schemaGen/SchemaGen/src/schemas/Core.xsd 

[ERROR] (Relevant to above error) another "NameType" is generated from here. 
    line 47 of file:/C:/Workspace/schemaGen/SchemaGen/src/schemas/SearchCore.xsd 
+0

你可以顯示XSD的命名空間聲明嗎? – Puce

回答

0

碰撞不是命名空間的問題,而是QName生成的問題。那是他們衝突的地方。

有3個選項我已經找到了解決這個問題:

  1. 在XSD類重命名爲別的東西來避免這個問題。
  2. 創建綁定文件重新映射上一代
  3. 班德從下往上做插曲文件和 每次指定一個新包生成的類,這樣的對象並不在同一封裝內衝突 。