2014-09-12 70 views
3

整型我使用XSD架构,如:蓖麻产生的BigDecimal类型的XSD

<xsd:element name="TrxIdRs" type="TrxIdRs_Type"/> 
<xsd:complexType name="TrxIdRs_Type"> 
    <xsd:simpleContent> 
     <xsd:extension base="xsd:int"> 
      <xsd:attribute ref="trxStatusCode" use="required"/> 
      <xsd:attribute ref="trxStatusDescr" use="required"/> 
     </xsd:extension> 
    </xsd:simpleContent> 
</xsd:complexType> 
<xsd:attribute name="trxStatusCode" type="xsd:int"/> 
<xsd:attribute name="trxStatusDescr" type="xsd:string"/> 

意味着XML一样:

<TrxIdRs trxStatusCode="1" trxStatusDescr="descr"> 
    111000111 
</TrxIdRs> 

但蓖麻产生唯一的BigDecimal类型此架构:

public abstract class TrxIdRs_Type implements java.io.Serializable { 
    //--------------------------/ 
//- Class/Member Variables -/ 
//--------------------------/ 
/** 
* internal content storage 
*/ 
private java.math.BigDecimal _content; 
/** 
* Field _trxStatusCode. 
*/ 
private java.lang.Integer _trxStatusCode; 

是否有任何其他变体可以编写xsd或将castor配置为在生成的bean中具有原始类型?

+0

您可以添加完整的xsd?... trxStatusCode和trxStatusDescr的声明在哪里? – Xstian 2014-09-12 14:53:23

+0

我无法显示完整的xsd - 它太大了。已添加属性说明和元素声明 – user2602807 2014-09-12 14:57:23

+0

我使用Jaxb,如果更改xsd:decimal中的类型,则可以正常工作;) – Xstian 2014-09-12 15:00:34

回答

1

http://castor.codehaus.org/1.2/srcgen-example.html

架构小数类型被映射到的java.math.BigDecimal。

你应该使用外部绑定..在这个link有一个配置教程(第7页)。

+0

这是什么意思?我不想有一个对象类型,只有原始类型或至少是整数,但不是java.math.BigDecimal – user2602807 2014-09-12 15:14:53

+0

DOC描述了如何为* elements *设置用户定义的java类型。只有可用的配置元素是:“但是元素没有问题,复杂元素的内容有问题(带有属性)。 – user2602807 2014-09-15 06:40:47