我想知道是否有可能在java中创建一个通用的webservice方法:
@WebMethod
public <T extends Foo> void testGeneric(T data){
但是,当我尝试使用Java客户端时,我会收到一条错误消息:
[错误]消息部分“参数”中的模式描述符{http://####/} testGeneric未定义,无法绑定到Java。
我知道可以创建一个带有List等参数的方法,这可以使用JAX-WS正确生成。
我不介意是否有解决方案意味着我只使用特定技术。
谢谢, 丹。
答案 0 :(得分:0)
我对此表示怀疑。但是你可以定义一个通用的超级接口,让你的实际服务接口用参数扩展它:
public interface BaseService<T>{
T doWhackStuff();
}
public interface WhackyService extends BaseService<Whack>{
}
public interface EvenMoreWhackyService extends BaseService<Whackier>{
}
如果您从多个组件构建接口,这种方法通常才有意义:
public interface BaseService<T>{
T doWhackStuff();
}
public interface ExtendedService<T>{
T doMoreWhackStuff();
}
public interface DoubleWhackyService extends BaseService<Whack>, ExtendedService<Whack>{
}
我没有在JAX-WS中测试过这种方法,但我知道它适用于Spring / GraniteDS / Flex