Out Of Bounds Error When Using Kewill Customer Refnum Greater Than 11 Characters (Doc ID 1085128.1)

Last updated on SEPTEMBER 08, 2016

Applies to:

Oracle Transportation Operational Planning - Version: 6.0 to 6.0.5 - Release: 6 to 6
Information in this document applies to any platform.
***Checked for relevance on 02-Dec-2011***

Symptoms

When using a Kewill Customer Refnum greater than 11 characters, the following error is seen in the logs when running an RIQ:


ERROR
-----------------------

2010-03-31 12:02:11.713 85015 Error Exception
java.lang.StringIndexOutOfBoundsException: String index out of range: 22

java.lang.StringIndexOutOfBoundsException: String index out of range: 22
at java.lang.String.substring(String.java:1765)
at
glog.business.rate.rateengine.external.REXKewill.buildOutputString(REXKewill.j
ava:556)
at
glog.business.rate.rateengine.external.REXKewill.costShipment(REXKewill.java:2
39)
at
glog.business.rate.rateengine.guts.RACExternalRatingEngine.costShipment(RACExt
ernalRatingEngine.java:72)
at
glog.business.rate.rateengine.guts.RACExternalRatingEngine.costShipment(RACExt
ernalRatingEngine.java:41)
at glog.business.rate.rateengine.RatingEngine.rateIt(RatingEngine.java:803)
at
glog.business.rate.rateengine.RatingEngine.findShipmentCost(RatingEngine.java:
681)
at
glog.business.rate.rateengine.RatingEngine.findShipmentCosts(RatingEngine.java
:570)
at
glog.business.rate.rateengine.RatingEngine.findShipmentCosts(RatingEngine.java
:377)
at
glog.business.rate.ratefinder.RateFinder.findShipmentCosts(RateFinder.java:262
)
at
glog.business.rate.ratefinder.RateFinder.findShipmentCosts(RateFinder.java:188
)
at
glog.business.rate.rateinquiry.RateInquirySession.calculateCost(RateInquirySes
sion.java:1257)
at
glog.business.rate.rateinquiry.RateInquirySession.getRates(RateInquirySession.
java:965)
at
glog.business.rate.rateinquiry.RateInquirySession.getRatesInternal(RateInquiry
Session.java:807)
at
glog.business.rate.rateinquiry.RateInquirySession.getRates(RateInquirySession.
java:233)
at
glog.business.conopt.ConoptResourceManager.getRateInquiryResult(ConoptResource
Manager.java:341)
at
glog.business.conopt.ConoptResourceManager.prepareRateForConOpt(ConoptResource
Manager.java:122)
at
glog.business.shipment.ShipmentBuilder.createEquipmentOptionsOnLeg(ShipmentBui
lder.java:2037)
at
glog.business.shipment.ShipmentBuilder.makeLegOptionsOnTLeg(ShipmentBuilder.ja
va:1319)
at
glog.business.shipment.ShipmentBuilder.makeLegOptions(ShipmentBuilder.java:177
6)
at
glog.business.shipment.ShipmentBuilder.buildBestItineraryOption(ShipmentBuilde
r.java:1492)
at
glog.business.shipment.ShipmentBuilder.buildShipmentGraph(ShipmentBuilder.java
:1546)
at
glog.business.shipment.ShipmentBuilder.buildShipmentGraphCollection(ShipmentBu
ilder.java:506)
at
glog.business.shipment.ShipmentBuilder.buildShipmentGraphCollection(ShipmentBu
ilder.java:445)
at
glog.business.shipment.ShipmentBuilder.buildShipmentGraph(ShipmentBuilder.java
:350)
at
glog.business.shipment.ShipmentBuilder.buildShipmentGraph(ShipmentBuilder.java
:311)
at
glog.business.action.OrderActionExecutor.buildShipmentGraph(OrderActionExecuto
r.java:383)
at
glog.business.action.OrderActionExecutor.buildShipments(OrderActionExecutor.ja
va:333)
at
glog.business.session.OrderActionSessionBean.buildShipments(OrderActionSession
Bean.java:228)
at
glog.business.session.OrderActionSessionServerSideEJBWrapper.buildShipments(Or
derActionSessionServerSideEJBWrapper.java:136)
at
glog.business.session.OrderActionSessionHome_likuwd_EOImpl.buildShipments(Orde
rActionSessionHome_likuwd_EOImpl.java:2648)
at
glog.business.session.gen.OrderActionSessionSkel.buildShipments(OrderActionSes
sionSkel.java:439)
at
glog.business.session.gen.OrderActionSessionSkel.exec(OrderActionSessionSkel.j
ava:128)
at glog.webserver.wrapper.SkelImpl.execDispatch(SkelImpl.java:15)
at
glog.server.wrapper.WrapperSessionBean.execDispatch(WrapperSessionBean.java:57
)
at
glog.server.wrapper.WrapperSessionServerSideEJBWrapper.execDispatch(WrapperSes
sionServerSideEJBWrapper.java:48)
at
glog.server.wrapper.WrapperSessionHome_a06097_EOImpl.execDispatch(WrapperSessi
onHome_a06097_EOImpl.java:60)
at glog.server.wrapper.WrapperSessionHome_a06097_EOImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:553)
at
weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:224
)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:443)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.
java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:439)
at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:61)
at
weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.ja
va:983)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
[


STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Log into OTM
2. Assign a Kewill Customer Refnum to a location containing more than 11 characters
3. Attempt to Run an RIQ using this location
4. Note the error

java.lang.StringIndexOutOfBoundsException: String index out of range: 22

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