WS制作网络服务。作为参数我接受两个字符串和一个对象的数组,其类型是我的项目中的类。
我创建了webservice接口和实现,它类似于:
@WebMethod(operationName = "getStuff")
@WebResult(name = "result")
Mix getStuff(
@WebParam(name = "string1") String one,
@WebParam(name = "string2") String two,
@WebParam(name = "stuff") Stuff[] stuff
);
我正在返回一个Mix类型的对象,它是我项目中的一个类,我接受一个Stuff类型的数组,这是我项目中的另一个类。从java进行测试不是问题,但是当其他人尝试使用该服务或者我尝试使用soapUI发送请求时,该数组始终为null。我需要做什么才能消耗我的服务,可以正确发送Stuff类型的数组?我是否需要使用JAXB进行一些自定义?
答案 0 :(得分:-1)
JAXB2使用列表而不是数组,因此您应该将签名替换为
@WebMethod(operationName = "getStuff")
@WebResult(name = "result")
Mix getStuff(
@WebParam(name = "string1") String one,
@WebParam(name = "string2") String two,
@WebParam(name = "stuff") java.util.List<Stuff> stuff
);
另外,请确保Mix
和Stuff
具有JAXB注释。