|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello, I have a grid, client running mode, inside a Ajax UpdatePanel. The grid has about 30 rows and 30 columns.
Some columns are freely writable by the user, some are "computed" and some other are hidden. When the user changes a writable column, a client script updates both computed (recalculating their values) and hidden columns, using setValue client method behind the scenes. So, there will be 4 more columns changed per user edit.
If the user changes nearly every row of the grid (so there will be more than a hundred cells changed), when she saves the grid, the following client-side exception occurs:
'Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: Index and length must refer to a location within the string. Parameter name: length' when calling method: [nsIDOMEventListener::handleEvent] Line 812
I'm using the latest EO.Web Controls version (2011.0.45).
Any help is really appreciated. Thanks
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
We are aware of an error with such error message with early builds, but the latest build has fixed that issue. So please double check whether you are indeed running the latest build. The number of changes should not matter, what matters would the location of the cell changed. So if you can figure that out then it will be much easier for us to reproduce the problem.
You may also want to temporarily remove the UpdatePanel first. That will give you the full stack trace information (if you allow it to be displayed). The full stack track information is essential for us to locate the point of the error.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hi eo_support, I verified the version of EO.Web.DLL IS actually 9.0.45.
Once removed the UpdatePanel, the stack trace looks like this:
[ArgumentOutOfRangeException: Index and length must refer to a location within the string. Parameter name: length] System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy) +9389263 System.String.Substring(Int32 startIndex, Int32 length) +11 EO.Web.Internal.a.a() +100 EO.Web.Internal.kg.a(String A_0) +536 EO.Web.Internal.kg.a(String A_0) +554 EO.Web.Internal.kg.a(String A_0) +554 EO.Web.Internal.au.b(String A_0) +263 EO.Web.Internal.au.a(String A_0, String A_1) +1106 EO.Web.Internal.au.a(String A_0, String A_1, String A_2) +85 EO.Web.Internal.au.b(String A_0, String A_1) +39 EO.Web.Internal.ca.ac() +427 EO.Web.WebControlBase.LoadViewState(Object savedState) +145 EO.Web.CallbackPanel.a(Object A_0) +64 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +187 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +148 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +225 System.Web.UI.Page.LoadAllState() +312 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +747
Anyway, I'd like to point out that if the user changes, for example, 20 rows, the problem does not occur. Moreover, the issue doesn't seem to depend on the position of the column being changed.
Thank you
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
We have not been able to reproduce this error. Can you provide a test page as well as detailed steps to reproduce the error?
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
It's a rather complex project. I have to extract and refactor some parts out of it. I'll keep you informed. Thanks
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Sure. Make sure the test project runs independently and only contain code needed to reproduce the problem. As soon as we have that we will try to run it here. If we can reproduce the problem, we should be able to find out the root cause.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello,
I worked hard trying to isolate the problem into a smaller project but with no luck at all.
Maybe the complexity of the user interface of the original project is somehow involved in reproducing the issue.
Unfortunately I don't have enough time to spend in mocking up a project in which the problem occurs.
Is it possible for you to compile a debug version of EO.Web.dll, with some kind of tracing and/or more debug info, in order to dig out the very problem?
Thank you
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
Unfortunately no. It is not possible for us to do that. The debug build hardcoded quite a few things and will only run in our debug environment. So even if we gave you the debug build, it won't run in your environment at all.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello, I'm turning up after some months and I finally have had enough time to isolate the problem in a small, self-consistent project. The problem still exists in the latest EO.Web Controls library (2012.0.43). You can download the full project here. Steps to reproduce the problem: 1. Open the solution file in VS2010 2. Start debugging: a page with a large grid will show up 3. Edit the cell of the first row in the column "Cause", and select a value from the dropdown ("001 - Straight time", for example). 4. Repeat the above point for all rows of the grid (see Example.jpg) 5. Press Save button: the exception will occur (trapped by an assert) Please, let me know if you need further help. Thanks in advance
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
Thank you very much for the additional information. We were able to reproduce and fix the problem. Please see your private message for the download location of the new build that has the fix.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello, I confirm you that the in the build 10.0.45.2 the problem is resolved. Great job!
Thanks a lot
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Great. Thanks for confirming the fix!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello,
I'm sorry to inform you I found a problem with the new version 2012.0.45 I recently upgraded to.
You can replicate it in my test project as follows: - run the project: the grid will appear - click on an empty cell of the column "Hrs": the standard edit box will show up, letting you to enter a time value - press the "refresh" button of the toolbar just on top of the grid (not the browser's one) - now, click again on a cell of the column "Hrs": the edit box is rather different (it's much wider than the column). But the really bad news is that no value will be saved when you hit enter, no matter what you type in.
Can you help me, please?
Thanks
Raf
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Hello, any news for me? In the meanwhile I was forced to revert back to v. 9.0.45, despite the "many edits" error...
Thanks
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
Sorry about the delay. Somehow this issue falls into the crack. We no longer have your original test project. Can you post it again?
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Sure, here's a new download link: http://db.tt/qK0BM8fTThis time the link should have no expiration. Thank you
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Hi,
We have posted a new build that should fix this problem. Please see your private message for the download location.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 11/15/2011 Posts: 24
|
Yes! The problem has disappeared in new build. Thank you again.
Cheers
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,195
|
Great. Thanks for the update!
|
|