使用字符串限制生成WSDL

时间:2013-04-10 08:41:30

标签: java wsdl

我在这样的类中有一个Getter / Setter方法:

 public class milestone { 
     String milestoneType; 
     public String getMilestoneType() 
       { 
             return milestoneType; 
       } 
     public void setMilestoneType(String milestoneType)  
       {     
            this.milestoneType = milestoneType; 
       }
    }

并在weblogic服务器的帮助下为此生成的WSDL,如:

    <xs:complexType name="MileStone">
   <xs:sequence>
   <xs:element minOccurs="1" name="MilestoneType" nillable="true" type="xs:string" /> 
    </xs:sequence>
  </xs:complexType>

现在我需要根据两个值来限制里程碑类型。我的意思是这只允许2个值,需要限制除2个值之外的其他值。

如何为此更改getter / setter类?请帮忙。

先谢谢

1 个答案:

答案 0 :(得分:1)

使用仅包含您想要允许的两个值的enum,如下所示:

public enum MilestoneType {
    PRECOMMIT,
    POSTCOMMIT
}

接下来,您需要将Milestone类更改为使用此类型而不是String,如下所示:

public class Milestone {
    private MilestoneType milestoneType; 
    public MilestoneType getMilestoneType()  { 
        return milestoneType; 
    } 
    public void setMilestoneType(MilestoneType milestoneType) {     
        this.milestoneType = milestoneType; 
    }
}