java - JAX_WS Handler error: class did not implement the ThreadContextMigrator interface -
i have jax-ws service works fine local eclipse java 1.6 8.5.5 environment, throws error on actual test server.
the handler
class doesn't directly reference or implement threadcontextmigrator
. idea might causing conflict?
i have handler
defined add security header outbound client request message referencing:
webservicesecuritysoaphandler implements soaphandler<soapmessagecontext> class import javax.xml.namespace.qname; import javax.xml.soap.name; import javax.xml.soap.soapelement; import javax.xml.soap.soapenvelope; import javax.xml.soap.soapfactory; import javax.xml.soap.soapheader; import javax.xml.ws.handler.soap.soaphandler; import javax.xml.ws.handler.soap.soapmessagecontext; import com.ge.business.application.psapplication; import com.ge.codes.oulogfileconstants; import com.ge.system.logsystem; import com.ge.util.logmessageformatter; import com.gebank.art.logging.log;
the handler
instanced proxy
import javax.xml.ws.bindingprovider; import javax.xml.ws.handler.handler; public anyserviceportsoap1_2proxy getsoap1_2proxy() throws exception{ anyserviceporttypesoap12 serviceport = null; anyserviceportsoap1_2proxy anyproxy = new anyserviceportsoap1_2proxy(); serviceport = anyproxy._getdescriptor().getproxy(); bindingprovider bp = (bindingprovider) serviceport; @suppresswarnings("rawtypes") list<handler> handlerchain = new arraylist<handler>(); handlerchain.add(new webservicesecuritysoaphandler() ); bp.getbinding().sethandlerchain(handlerchain); bp.getrequestcontext().put( bindingprovider.endpoint_address_property, gethostparms().getanyserviceendpointurl()); bp.getrequestcontext().put("timeout", getconnectiontimeoutlimit()); bp.getrequestcontext().put("connection_timeout", getconnectiontimeoutlimit()); return anyproxy; }
stack trace:
[5/14/15 10:32:56:552 edt] 000001ba ffdcprovider w com.ibm.ws.ffdc.impl.ffdcprovider logincident ffdc1003i: ffdc incident emitted on /opt/was85/app-it1/profiles/p-a85it1-a/logs/ffdc/as-a85it1-a-1-ouappl1-1_239d0479_15.05.14_10.32.56.5493598364447310372030.txt com.ibm.ws.webservices.utils.pluginsutils.run 88 [5/14/15 10:32:56:536 edt] 000001ba wasaxis2confi e wsws7026e: 'threadcontextmigrator' plug-ins cannot load correctly because of following error: org.apache.axis2.deployment.deploymentexception: wsws7025e: com.ibm.ws.wsaddressing.jaxws.converters.addressingpropertiesmigrator class did not implement threadcontextmigrator interface. @ com.ibm.ws.websvcs.deployment.wasaxis2configurationbuilder.discovertcmplugins(wasaxis2configurationbuilder.java:1213) @ com.ibm.ws.websvcs.deployment.wasaxis2configurationbuilder.loadaxisclienttcmplugins(wasaxis2configurationbuilder.java:427) @ com.ibm.ws.websvcs.client.wsclientconfigurationfactory.getconfigcontext(wsclientconfigurationfactory.java:298) @ com.ibm.ws.websvcs.client.wsclientconfigurationfactory.getclientconfigurationcontext(wsclientconfigurationfactory.java:210) @ org.apache.axis2.jaxws.description.impl.descriptionfactoryimpl.createservicedescription(descriptionfactoryimpl.java:92) @ org.apache.axis2.jaxws.description.impl.descriptionfactoryimpl.createservicedescription(descriptionfactoryimpl.java:79) @ org.apache.axis2.jaxws.description.descriptionfactory.createservicedescription(descriptionfactory.java:78) @ org.apache.axis2.jaxws.spi.servicedelegate.<init>(servicedelegate.java:218) @ org.apache.axis2.jaxws.spi.provider.createservicedelegate(provider.java:83) @ org.apache.axis2.jaxws.spi.provider.createservicedelegate(provider.java:79) @ javax.xml.ws.service.<init>(service.java:57) @ com.ge.soa.any.anyservicesoap12.<init>(anyservicesoap12.java:35) @ com.ge.soa.any.anyserviceportsoap1_2proxy$descriptor.init(anyserviceportsoap1_2proxy.java:35) @ com.ge.soa.any.anyserviceportsoap1_2proxy$descriptor.<init>(anyserviceportsoap1_2proxy.java:23) @ com.ge.soa.any.anyserviceportsoap1_2proxy.<init>(anyserviceportsoap1_2proxy.java:83) @ com.ge.ou.soa.realtimeanyservicefacade.getsoap1_2proxy(realtimeanyservicefacade.java:134) @ com.ge.ou.soa.realtimeanyservicefacade.getanystandard(realtimeanyservicefacade.java:271) @ com.ge.ou.commands.rto.realtimeanycommand.retrieverealtime(realtimeanycommand.java:121) @ com.ge.ou.commands.rto.realtimeanycommand.execute(realtimeanycommand.java:73) @ com.ge.ou.servlets.oucontroller.performtask(oucontroller.java:1276) @ com.ge.ou.servlets.oucontroller.dopost(oucontroller.java:265) @ javax.servlet.http.httpservlet.service(httpservlet.java:595) @ javax.servlet.http.httpservlet.service(httpservlet.java:668) @ com.ibm.ws.webcontainer.servlet.servletwrapper.service(servletwrapper.java:1230) @ com.ibm.ws.webcontainer.servlet.servletwrapper.handlerequest(servletwrapper.java:779) @ com.ibm.ws.webcontainer.servlet.servletwrapper.handlerequest(servletwrapper.java:478) @ com.ibm.ws.webcontainer.servlet.servletwrapperimpl.handlerequest(servletwrapperimpl.java:178) @ com.ibm.ws.webcontainer.filter.webappfiltermanager.invokefilters(webappfiltermanager.java:1071) @ com.ibm.ws.webcontainer.servlet.cacheservletwrapper.handlerequest(cacheservletwrapper.java:87) @ com.ibm.ws.webcontainer.webcontainer.handlerequest(webcontainer.java:914) @ com.ibm.ws.webcontainer.wswebcontainer.handlerequest(wswebcontainer.java:1662) @ com.ibm.ws.webcontainer.channel.wcchannellink.ready(wcchannellink.java:200) @ com.ibm.ws.http.channel.inbound.impl.httpinboundlink.handlediscrimination(httpinboundlink.java:461) @ com.ibm.ws.http.channel.inbound.impl.httpinboundlink.handlenewrequest(httpinboundlink.java:528) @ com.ibm.ws.http.channel.inbound.impl.httpinboundlink.processrequest(httpinboundlink.java:314) @ com.ibm.ws.http.channel.inbound.impl.httpiclreadcallback.complete(httpiclreadcallback.java:88) @ com.ibm.ws.ssl.channel.impl.sslreadservicecontext$sslreadcompletedcallback.complete(sslreadservicecontext.java:1818) @ com.ibm.ws.tcp.channel.impl.aioreadcompletionlistener.futurecompleted(aioreadcompletionlistener.java:175) @ com.ibm.io.async.abstractasyncfuture.invokecallback(abstractasyncfuture.java:217) @ com.ibm.io.async.asyncchannelfuture.firecompletionactions(asyncchannelfuture.java:161) @ com.ibm.io.async.asyncfuture.completed(asyncfuture.java:138) @ com.ibm.io.async.resulthandler.complete(resulthandler.java:204) @ com.ibm.io.async.resulthandler.runeventprocessingloop(resulthandler.java:775) @ com.ibm.io.async.resulthandler$2.run(resulthandler.java:905) @ com.ibm.ws.util.threadpool$worker.run(threadpool.java:1864)
Comments
Post a Comment