Well, I'm in the following scenario:
I have this class, it is a webservice (contains the @WebService method):
@WebService(name = "l", targetNamespace = "o")
public abstract interface Service {
@WebMethod(operationName = "Cancelar")
@RequestWrapper(localName = "Cancelar", targetNamespace = "http://www.x.com.br/y/w", className = "br.com.x.y.w.CancelarRequest")
@ResponseWrapper(localName = "CancelarResponse", targetNamespace = "http://www.x.com.br/y/w", className = "br.com.x.y.w.CancelarResponse")
public abstract void Cancelar(
@WebParam(name = "k", targetNamespace = "http://www.x.com.br/y/w", mode = WebParam.Mode.INOUT) Holder<String> paramHolder,
@WebParam(name = "Result", targetNamespace = "http://www.x.com.br/y/w", mode = WebParam.Mode.OUT) Holder<ResultType> paramHolder1);
}
My question is: if this class is a webservice because I define it as an "abstract interface", alias, - what happens when I define a class using "abstract interface". To this day I have only created classes that use one or the other.
Note that this class is the remote interface, it defines the remote services (@Method), but does not implement them, the whole implementation seems to be in the ServiceImpl class:
public class ServiceImpl implements Service
@Override
public void Cancelar(
Holder<String> k,
Holder<ResultType> result) {
CancelarP p = new CancelarP(ctx, k.value);
CancelarResponseType execute = p.execute();
ResultType resultType = execute.getResult();
result.value = resultType;
}
In the ServiceImpl class, if when I give an @Override I lose the parent class implementation, how do I get the Marshall's xml received via Soap ?. I can not understand how these classes are working together.
I hope to have been clear in the elaboration of the question, since I thank you.