This week's giveaway is in the Java/Jakarta EE forum.
We're giving away four copies of Java EE 8 High Performance and have Romain Manni-Bucau on-line!
See welcome thread
Win a copy of Java EE 8 High Performance this week in the Java/Jakarta EE forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic is an interface, and JAXB can't handle interfaces  RSS feed

Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am trying to implement a JAX-WS web service as asynchronous.
I have implemented the client side code as follows:

CallbackHandler callbackHandler = new CallbackHandler ();
Future<?> resp = serverProxy.validateAsAsync(request, callbackHandler);
response = callbackHandler.getResponse();

class CallbackHandler implements AsyncHandler<MyResponse> {
private MyResponse output;
public void handleResponse(Response<MyResponse> response) {
try {
output = response.get();
}catch (ExecutionException e) {
} catch (InterruptedException e) {

MyResponsegetResponse() {
return output;

The SEI looks like below
public Future<?> validateAsAsync(
@WebParam(name = "MyRequest", targetNamespace = "", partName = "parameter")
MyRequest parameter,
@WebParam(name = "callbackhandler", targetNamespace = "", partName = "asyncHandler")
AsyncHandler<MyResponse> asyncHandler);

I am getting the following error:
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 4 counts of IllegalAnnotationExceptions is an interface, and JAXB can't handle interfaces.
this problem is related to the following location:
at private jaxws.ValidateAsAsync.callbackhandler

Looks like Jax-WS is not able to create the Jax-B object for ASyncHandler since it is an interface, how to get around this issue?
I really appreciate your help.

  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!