Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何更改Castor映射以删除;xmlns:xsi“;及;xsi:type";XML输出中元素的属性?_Java_Xml_Mapping_Castor - Fatal编程技术网

Java 如何更改Castor映射以删除;xmlns:xsi“;及;xsi:type";XML输出中元素的属性?

Java 如何更改Castor映射以删除;xmlns:xsi“;及;xsi:type";XML输出中元素的属性?,java,xml,mapping,castor,Java,Xml,Mapping,Castor,如何更改Castor映射 <?xml version="1.0"?> <!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN" "http://castor.org/mapping.dtd"> <mapping> <class name="java.util.ArrayList" auto-complete="

如何更改Castor映射

<?xml version="1.0"?>
<!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN"
                         "http://castor.org/mapping.dtd">

<mapping>
    <class name="java.util.ArrayList" auto-complete="true">
        <map-to xml="ArrayList" />
    </class>
    <class name="com.db.spgit.abstrack.ws.response.UserResponse">
        <map-to xml="UserResponse" />
        <field name="id" type="java.lang.String">
            <bind-xml name="id" node="element" />
        </field>
        <field name="deleted" type="boolean">
            <bind-xml name="deleted" node="element" />
        </field>
        <field name="name" type="java.lang.String">
            <bind-xml name="name" node="element" />
        </field>
        <field name="typeId" type="java.lang.Integer">
            <bind-xml name="typeId" node="element" />
        </field>
        <field name="regionId" type="java.lang.Integer">
            <bind-xml name="regionId" node="element" />
        </field>
        <field name="regionName" type="java.lang.String">
            <bind-xml name="regionName" node="element" />
        </field>
    </class>
</mapping>
我更喜欢

<?xml version="1.0" encoding="UTF-8"?> 
<ArrayList>
    <UserResponse>
        <name>Tester</name>
        <typeId>1</typeId>
        <regionId>2</regionId>
        <regionName>US</regionName>
    </UserResponse>
</ArrayList>

测试员
1.
2.
美国

这样,元素名称就意味着
xsi:type

将Castor Marshaller属性
suppressXSIType
设置为false:

Marshaller marshaller = new Marshaller(w);
marshaller.setSuppressXSIType(true);
请看下面的例子。(请注意,表1.10 Marshaller属性仅列出属性
suppressNamespaces
,但方法
setSuppressNamespaces()
setSuppressXSIType()
都存在于类
Marshaller
中)

Marshaller marshaller = new Marshaller(w);
marshaller.setSuppressXSIType(true);