on 10-27-2008 5:55 PM
Hi,
When I click New main bank from Payroll > direct deposit in ESS.
I am getting the following error. Can any one suggest me what this error is about?
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.RangeCheck(ArrayList.java:539)
at java.util.ArrayList.get(ArrayList.java:356)
at com.sap.tc.webdynpro.progmodel.context.Node$ElementList.getElement(Node.java:2034)
at com.sap.tc.webdynpro.progmodel.context.Node.getElementAtInternal(Node.java:621)
at com.sap.tc.webdynpro.progmodel.context.Node.setLeadSelection(Node.java:753)
at com.sap.xss.hr.per.us.bank.detail.DetailView.wdDoModifyView(DetailView.java:166)
at com.sap.xss.hr.per.us.bank.detail.wdp.InternalDetailView.wdDoModifyView(InternalDetailView.java:756)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doModifyView(DelegatingView.java:78)
at com.sap.tc.webdynpro.progmodel.view.View.modifyView(View.java:337)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.doModifyView(ClientComponent.java:481)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.doModifyView(ClientComponent.java:488)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doModifyView(WindowPhaseModel.java:551)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:148)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:321)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:215)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
Goto the ess~bank webdynpro application -> Webdynpro Components -> VcPerBankUSDetail -> Views -> DetailView -> Implementation Tab ....wddomodifyview() method line no..166 and try to fix the issue there or send me the code....I will let you know ...
Shikhil
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Below is the wddomodify() function
public static void wdDoModifyView(IPrivateDetailView wdThis, IPrivateDetailView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
{
//@@begin wdDoModifyView
TextFieldInfo[] fieldInfo = new TextFieldInfo[]
{ new TextFieldInfo("Bankl", "Bank_Name") };
F4TextHelper.GetF4Text(wdThis.wdGetAPI(),
wdContext.nodeSelectedInfotype(),
view,
fieldInfo);
String subtype = wdContext.currentSelectedInfotypeElement().getBnksa().toString();
try{
if ( subtype.startsWith("1") )
{
wdContext.currentContextElement().setIsVisible(WDVisibility.VISIBLE );
}
else
{
wdContext.currentContextElement().setIsVisible(WDVisibility.NONE);
}
}catch (Exception ex){ }
String bankControlKey = wdContext.currentSelectedInfotypeElement().getBkont();
if (bankControlKey.equals(""))
wdContext.nodeAccount_type_radiobutton().setLeadSelection(2);
else{
for (int i=0; i<wdContext.nodeAccount_type_radiobutton().size()-1; i++){
if (wdContext.nodeAccount_type_radiobutton().getAccount_type_radiobuttonElementAt(i).getValue().equals(bankControlKey)){
wdContext.nodeAccount_type_radiobutton().setLeadSelection(i);
break;
}
}
}
i have highlighted the 166 line
I remember having this issue..Just do the following code changes and you would be fine ...
//if (bankControlKey.equals(""))
//wdContext.nodeAccount_type_radiobutton().setLeadSelection
//(2);
//else{
Comment out these 4 lines
for (int i=0; i<wdContext.nodeAccount_type_radiobutton().size(); i++){
if (wdContext.nodeAccount_type_radiobutton().getAccount_type_radiobuttonElementAt(i).getValue().equals(bankControlKey)){
wdContext.nodeAccount_type_radiobutton().setLeadSelection(i);
break;
and in the for loop change the condition as:
for (int i=0; i<wdContext.nodeAccount_type_radiobutton().size(); i++){
instead of i<wdContext.nodeAccount_type_radiobutton().size() -1
Hope it helps
Shikhil
I remember having this issue..Just do the following code changes and you would be fine ...
//if (bankControlKey.equals(""))
//wdContext.nodeAccount_type_radiobutton().setLeadSelection
//(2);
//else{
Comment out these 4 lines
for (int i=0; i<wdContext.nodeAccount_type_radiobutton().size(); i++){
if (wdContext.nodeAccount_type_radiobutton().getAccount_type_radiobuttonElementAt(i).getValue().equals(bankControlKey)){
wdContext.nodeAccount_type_radiobutton().setLeadSelection(i);
break;
and in the for loop change the condition as:
for (int i=0; i<wdContext.nodeAccount_type_radiobutton().size(); i++){
instead of i<wdContext.nodeAccount_type_radiobutton().size() -1
Hope it helps
Shikhil
Hi,
have you checked if the nodeAccount_type_radiobutton() is filled?
This error accurs because the program are trying access a invalid prosition into the node.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
78 | |
9 | |
9 | |
7 | |
7 | |
6 | |
6 | |
5 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.