发布的接口形如
@WebService
public interface ICardWebServiceProvider {
CardMsgBean[] reqForCardService(CardMsgBean[] cardMsgBeans);
Future<?> reqForCardServiceAsync(CardMsgBean[] cardMsgBeans,
AsyncHandler<ReqForCardServiceResponse> asyncHandler);
}
注意ICardWebServiceProvider实现类中reqForCardService注解成@UseAsyncMethod
使用JaxWsProxyFactoryBean来访问接口方法reqForCardService,结果抛出异常
Exception in thread "Thread-4639" java.lang.IllegalStateException:
IDLE,initial
at
org.eclipse.jetty.server.AsyncContinuation.dispatch(AsyncContinuation.java:
403)
at
org.apache.cxf.transport.http_jetty.continuations.JettyContinuationWrapper.resume(JettyContinuationWrapper.java:
68)
at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker
$JaxwsServerHandler.handleResponse(AbstractJAXWSMethodInvoker.java:
134)
at com.ylink.card.ws.business.service.impl.CardWebServiceProviderImpl
$1.run(CardWebServiceProviderImpl.java:88)
at java.lang.Thread.run(Thread.java:662)
而客户端访问则相应抛出如下异常
PhaseInterceptorChain Interceptor for {http://
service.business.ws.card.ylink.com/}
ICardWebServiceProviderService#{http://
service.business.ws.card.ylink.com/}reqForCardService has thrown
exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor
$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:
64)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept
如果大家有遇到类似问题的 请不吝赐教