Apache CXF Enum提供了jaxbexception

时间:2011-12-08 08:25:31

标签: java soap cxf

我创建了一个CXF Web服务,除了参数为Enum的方法外,所有方法都有效。我使用wsdl2java命令生成了我的javaclient代码。

public enum OrderDirection {
    DESC, ASC;

    public String value() {
        return name();
    }
}

当我尝试运行时,例如,getAllUsers(orderBy,OrderDirection.DESC);我得到一个例外:

[javax.xml.bind.JAXBException: class com.tdr.wsclient.OrderDirection nor any of its super class is known to this context.]

OrderDirection Enum的wsdl定义如下所示:

  <xs:simpleType name="orderDirection">
    <xs:restriction base="xs:string">
      <xs:enumeration value="DESC"/>
      <xs:enumeration value="ASC"/>
    </xs:restriction>
  </xs:simpleType>

1 个答案:

答案 0 :(得分:0)

我的界面出错了。我在酸性旅行中定义了这样的Enums:

List<User> getAllUsers(String orderBy, Enum<OrderDirection> direction);

它应该是这样的:

List<User> getAllUsers(String orderBy, OrderDirection direction);