public interface AnimalService {
@WebMethod
void add(Animal animal);
}
这里Animal是抽象类,它有两个子类Cat和Dog; 有没有办法在WSDL里实现这种多态?
答案是可以,使用@XmlSeeAlso注解即可
@XmlSeeAlso({Cat.class, Dog.class})
public abstract class Animal{
}
这样产生的WSDL里会有这样的东西:
<xs:complexType name="cat"> <xs:complexContent> <xs:extension base="tns:animal"> <xs:sequence> ... </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>