Deconsolidation Pool Fails With Null Pointer Exception (Doc ID 1300669.1)

Last updated on SEPTEMBER 08, 2016

Applies to:

Oracle Transportation Management - Version: 6.0.4 and later   [Release: 6 and later ]
Information in this document applies to any platform.

Symptoms

When planning two orders via a deconsolidation pool, the planning fails with a Null Pointer:

2010-12-07 14:30:05.399 467322 Debug PlanningDetails RateGeoFinderSession.findPreferredRatesByAddress(): Returning cached preferred rates result for CISCO.ACC_PENANG_SLC|CISCO.ACC_CUSTOMER_LONG ISLAND|CISCOB [] batch - 1
2010-12-07 14:30:05.4 467322 Debug PlanningDetails PlanningParameterHelper.getPlanningParameter(): Returning ALLOW DUPLICATE PREFERRED RATE OFFERINGS -> ParameterData: value = <0>, uomCode = <null> (Set = <CISCO.ACC_DYNPOL>, default set = <DEFAULT> batch - 1
2010-12-07 14:30:05.401 467322 Debug Planning RateGeoFinderSession.findCompositeRateGeoPKs(): No preferred rates are found. batch - 1
2010-12-07 14:30:05.402 467322 Debug Planning RateGeoFinderSession.findCompositeRateGeoPKs(): End looking for preferred rates. batch - 1
2010-12-07 14:30:05.403 467322 Debug PlanningDetails RateGeoFinderSession.findTRateGeosByAddresses(): Check the validity of rate offerings found by lane or zone) batch - 1
2010-12-07 14:30:05.406 467322 Debug PlanningDetails RateGeoFinderSession.findTRateGeosByAddresses(): RateGeoFinderSession.findTRateGeosByAddress(): rateOfferingGidSet = <null> batch - 1
2010-12-07 14:30:05.408 467322 Error Exception java.lang.NullPointerException

java.lang.NullPointerException
at glog.business.consolidation.bulkplan.dynamicpool.DynamicPoolPlanner.createBundleDataThreadable(DynamicPoolPlanner.java:1892)
at glog.business.consolidation.bulkplan.dynamicpool.DynamicPoolPlanner.plan(DynamicPoolPlanner.java:248)
at glog.business.consolidation.bulkplan.PoolXDockPlanner.planThruDeconsolidationPools(PoolXDockPlanner.java:3632)
at glog.business.consolidation.bulkplan.PoolXDockPlanner.planThruPools(PoolXDockPlanner.java:2352)
at glog.business.consolidation.bulkplan.PoolXDockPlanner.bulkPlan(PoolXDockPlanner.java:608)
at glog.business.consolidation.bulkplan.OrderPlanner.bulkPlan(OrderPlanner.java:314)
at glog.business.action.order.OrderActions.planUnassignedOrders(OrderActions.java:826)
at glog.business.action.order.BulkPlanActionExecutor.planOrders(BulkPlanActionExecutor.java:272)
at glog.business.action.order.BulkPlanActionExecutor.planOrders(BulkPlanActionExecutor.java:112)
at glog.business.session.OrderActionSessionBean.planOrders(OrderActionSessionBean.java:1306)
at glog.business.session.OrderActionSessionServerSideEJBWrapper.planOrders(OrderActionSessionServerSideEJBWrapper.java:1172)
at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxNotSupportedInterceptor.invoke(TxNotSupportedInterceptor.java:43)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.SecurityRoleInterceptor.invoke(SecurityRoleInterceptor.java:47)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at OrderActionSessionHome_RemoteProxy_6iid3ag.planOrders(Unknown Source)
at glog.server.workflow.adhoc.BulkPlan.executeOrder(BulkPlan.java:65)
at glog.server.workflow.adhoc.BulkPlan.execute(BulkPlan.java:49)
at glog.server.workflow.SimpleWorkflow.execute(SimpleWorkflow.java:23)
at glog.server.workflow.WorkflowSessionBean.execute(WorkflowSessionBean.java:64)
at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxNotSupportedInterceptor.invoke(TxNotSupportedInterceptor.java:43)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.SecurityRoleInterceptor.invoke(SecurityRoleInterceptor.java:47)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at workflow_WorkflowSession_NonTransactional_RemoteProxy_mkgm02.execute(Unknown Source)
at glog.server.workflow.WorkflowManager.execute(WorkflowManager.java:347)
at glog.server.workflow.Trigger.trigger(Trigger.java:122)
at glog.util.event.MemoryEventQueueRunnable.processEvent(MemoryEventQueueRunnable.java:141)
at glog.util.event.MemoryEventQueueRunnable.run(MemoryEventQueueRunnable.java:96)
at glog.util.event.EventThread.run(EventThread.java:83)
at java.lang.Thread.run(Thread.java:595)
batch - 1
2010-12-07 14:30:05.41 467322 Debug PoolXDockPlanning DYNPOL: Leaving CreateBundleDataThreadable. batch - 1


The Order Releases

* have the Same Source/Destination and Weight
* have different Service Levels, which is the only real difference between the ORs.


The requirement is handled through an OR Refnum Qualifier. Both Order Releases should be planned together through the Deconsolidation Pool and then be shipped with the individual Service Levels from the Deconsolidation Pool to the Destination Locations.

The expectation is that OTM creates 3 shipments:

1 consolidated shipment to the Pool
2 shipments from the Pool (one with Service Level = CIS1 and one with Service Level = CIS3).

Currently OTM fails to plan the two Order Releases. The DYNPOL logic is turned on.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms