NullPointerException When Evaluating Itinerary with No Rates (Doc ID 749389.1)

Last updated on JULY 11, 2012

Applies to:

Oracle Transportation Operational Planning - Version 5.5.03.04 to 5.5.05.01 [Release 5.5]
Information in this document applies to any platform.
***Checked for relevance on 12-Nov-2010***


Symptoms

-- Problem Statement:

OTM has been configured with two itineraries that match the geography of an order being planned.

The first Itinerary has no Rate constraints.

The second Itinerary has specific Rate Offerings assigned to each Itinerary Leg where these Rate Offerings do not have any defined Rate Records for this Geography.

Therefore the second Itinerary cannot be used to plan the order.If the Rate Offering constraint was removed from the Itinerary Legs of the second itinerary could be used to plan the order.

When OTM is planning and evaluates the second itinerary, OTM encounters that their are no rates available and generates the following Exception:

java.lang.NullPointerException
at
glog.business.rate.ratefinder.RateGeoFinderSession.findTRateGeosByAddresses(RateGeoFinderSession.java:488)
at
glog.business.rate.ratefinder.RateGeoFinderSession.findTRateGeosByAddresses(RateGeoFinderSession.java:640)
at
glog.business.equipment.EquipmentHelper.getCompatibleEquipmentGroupSets(EquipmentHelper.java:1370)
at glog.business.shipment.ShipmentBuilder.createEquipmentOptionsOnLeg(ShipmentBuilder.java:1827)
at glog.business.shipment.ShipmentBuilder.makeLegOptionsOnTLeg(ShipmentBuilder.java:1188)
at glog.business.shipment.ShipmentBuilder.makeLegOptions(ShipmentBuilder.java:1605)
at glog.business.shipment.ShipmentBuilder.buildBestItineraryOption(ShipmentBuilder.java:1338)
at glog.business.shipment.ShipmentBuilder.buildShipmentGraph(ShipmentBuilder.java:1386)
at glog.business.shipment.ShipmentBuilder.buildShipmentGraphCollection(ShipmentBuilder.java:458)
at glog.business.shipment.ShipmentBuilder.buildShipmentGraphCollection(ShipmentBuilder.java:400)
at
glog.business.consolidation.bulkplan.BuildShipmentGraphCollectionTask.executePlanning(BuildShipmentGraphCollectionTask.java:25)
at glog.business.util.PlanningTask.execute(PlanningTask.java:15)
at glog.server.workflow.tasklist.Task.perform(Task.java:51)
at glog.server.workflow.tasklist.TaskList.executeInCallerThread(TaskList.java:117)
at glog.business.util.PlanningTaskList.executeInCallerThread(PlanningTaskList.java:77)
at glog.server.workflow.tasklist.TaskList.execute(TaskList.java:97)
at glog.server.workflow.tasklist.TaskList.execute(TaskList.java:158)
at
glog.business.consolidation.bulkplan.OrderPlanner.buildDirectShipmentGraphCollection(OrderPlanner.java:757)
at glog.business.consolidation.bulkplan.OrderPlanner.makeDirectTShipments(OrderPlanner.java:700)
at glog.business.consolidation.bulkplan.OrderPlanner.bulkPlan(OrderPlanner.java:313)
at glog.business.action.order.OrderActions.planUnassignedOrders(OrderActions.java:804)
at glog.business.action.order.BulkPlanActionExecutor.planOrders(BulkPlanActionExecutor.java:254)
at glog.business.action.order.BulkPlanActionExecutor.planOrders(BulkPlanActionExecutor.java:113)
at glog.business.session.OrderActionSessionBean.planOrders(OrderActionSessionBean.java:1072)
at
glog.business.session.OrderActionSessionServerSideEJBWrapper.planOrders(OrderActionSessionServerSideEJBWrapper.java:1118)
at
glog.business.session.OrderActionSessionHome_likuwd_EOImpl.planOrders(OrderActionSessionHome_likuwd_EOImpl.java:2530)
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
glog.server.workflow.WorkflowSessionNonTransServerSideEJBWrapper_t6tuwu_EOImpl.execute(WorkflowSessionNonTransServerSideEJBWrapper_t6tuwu_EOImpl.java:100)
at glog.server.workflow.WorkflowManager.execute(WorkflowManager.java:341)

-- Steps To Reproduce:

1. Create two itineraries:

     a) Single leg itinerary with no Rate Offering Constraint on the Itinerary Leg - This itinerary is expected to be used.

     b) Two-leg itinerary where each leg has a Constrained Rate Offering. These Rate Offerings have no Rate Records for the Geography for the shipments that would be built from this Itinerary.

2. Navigate to Order Management > Order Release > Order Release

3. Search for an Order Release that is expected to plan with the single leg itinerary

4. From the Order Release select: Actions > Create Buy Shipment > Bulk Plan - Buy >click OK

This will fail to plan with the above Exception.

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