我有这样的接口:多个泛型类型的Java编译器错误
public interface GenericWSEndpoint<T1,T2> {
public void call(String url,String operationName, T1 requestObject, T2 responseObject,long timeout) throws Exception;
}
当我尝试定义与这个物体,它给
org.apache.maven.BuildFailureException:编译失败: 不兼容的类型
对象定义:
private static GenericWSEndpoint<BulkCheckBlockageRequest,BulkCheckBlockageResponse> endpoint=GenericWsEndpointFactory.createSpecificEndpoint(WSTypes.CXF);
和工厂代码:
public class GenericWsEndpointFactory{
public static <T1,T2> GenericWSEndpoint createSpecificEndpoint(WSTypes type){
switch (type) {
case CXF:
return new CXFWsEndPoint<T1,T2>();
}
return null;
}
}
和CXFWsEndPoint(无specificly定义的构造函数):
public class CXFWsEndPoint<T1,T2> implements GenericWSEndpoint<T1, T2>{
.
.
}
我也查了一下这个问题的答案,但他们用类似的递归仿制药的定义有关
任何想法?
编辑:异常:
[INFO]编译失败 ResponseManager \ SRC \主\的java \ COM \ X \ resman \ UTIL \ WebServiceUtil.java:[57142] 不兼容的类型;没有类型变量T1,T2的实例存在,所以 com.x.rbm.ws.service.GenericWSEndpoint符合 com.x.rbm.ws.service.GenericWSEndpoint found:com.x. rbm.ws.service.GenericWSEndpoint要求:
com.x.rbm.ws.service.GenericWSEndpointequest,com.x.resman.model.checkblockage.BulkCheckBlockageResponse>
有例外的任何更多信息? –
这个接口很好。错误必须在其他地方 –
检查您的右侧类型,GenericWsEndpointFactory.createSpecificEndpoint(WSTypes.CXF);'? –