Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Unknown
Description
Hi,
I am getting following error for my application on PROD:
[Tue, 30-Sep-2014 @ 12:22:14.469] [catalina-exec-86] ERROR com.dish.dishapi.service.Service - InvocationTargetException occured while calling operation: getOAuthAuthentication with error message:
java.lang.reflect.InvocationTargetException
at com.dish.dishapi.service.Service.invokeOperation(Service.java:37)
at com.dish.dishapi.service.ResourceEntitlementService.execute(ResourceEntitlementService.java:16)
at com.dish.api.service.ResourceEntitlementServiceEntry.execute(ResourceEntitlementServiceEntry.groovy:11)
at com.dish.api.AuthController.oAuth(AuthController.groovy:56)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: javax.xml.ws.soap.SOAPFaultException: Fault string, and possibly fault code, not set
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:157)
at com.dish.dishapi.service.resourceentitlement.ResourceEntitlementV5.getOAuthAuthentication(ResourceEntitlementV5.java:109)
... 7 more
Caused by: java.lang.NullPointerException
at org.apache.cxf.binding.soap.interceptor.SoapHeaderOutFilterInterceptor.handleMessage(SoapHeaderOutFilterInterceptor.java:43)
at org.apache.cxf.binding.soap.interceptor.SoapHeaderOutFilterInterceptor.handleMessage(SoapHeaderOutFilterInterceptor.java:29)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:570)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:479)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:382)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:335)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
... 8 more
Its not happening on my Local. Also its not happening on PROD all time.. But when it started it is happening all the time on that specific cluster.
Codebase:
Service Client Class
public class ResourceEntitlementV5 {
private static ResourceEntitlementV50PortType resourceEntitlementPortV5 = (ResourceEntitlementV50PortType) DishApiPortFactory.RESOURCE_ENTITLEMENT_MGMT
.create();
public ProcessAuthenticationResponse processAuthentication(
ResourceEntitlementTransferRequest request)
Configuration of port calls:
public class DishApiPortFactory<T> {
public static final DishApiPortFactory<ResourceEntitlementV50PortType> RESOURCE_ENTITLEMENT_MGMT = newPortFactory(
new ResourceEntitlementV50().getResourceEntitlementV50Port(),
UriMapper.RESOURCE_ENTITLEMENT_MGMT_ENDPOINT);
private static <T> DishApiPortFactory<T> newPortFactory(T port, String endpointPropName) {
log.info(" Starting STUB and ENDPOINT binding for end point key :{} ", endpointPropName);
String uri = null;
try {
uri = DishApiKeyValueUtility.getValueFromKey(endpointPropName);
log.info(" FOUND URI for {} = {} ", endpointPropName, uri);
Map<String, Object> requestContext = ((BindingProvider) port).getRequestContext();
log.info("URI: " + uri);
requestContext.put("thread.local.request.context", "true");
requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, uri);
} catch (Exception e)
return new DishApiPortFactory<T>(port);
}
cxf version: cxf-codegen-plugin-2.7.11