Skip to Content

Limit on number of visible HTMLB controls

I have got two different jsps in a JSPDynPage component. One jsp page contains a very basic form containing few labels, one input field and a table. Another jsp page contains a form having tens of input fields, labels and a single table. This was working fine. Then I needed to add two list items having 15 text view items on both the jsps. So I created another jsp and did a include in both the earlier jsps. Funny it works in the basic jsp page which had fewer htmlb controls while it doesn’t work in the other having tens og control. Instead of including I copied the contents of newer jsp in the advanced page. Still the same error. Then I went on to reduce the number of list items in the advanced jsp page and surpringly it started working.  My thinking is there is somewhere a limit on number of visible control on a page. I will check that by making test components in the next few days. For the mean time I have worked around this issue by reducing the number of controls.
You must be Logged on to comment or reply to a post.
  • Hi,

    This is a common issue with complex .jsp forms.  In the Java spec, methods can only be so large.  Since, at least in EP 5, the generated Java code is contained in one “doContent” method, if the page is too large, you have a failure.  The really amusing thing with this error for me is the exception raised “Illegal target of jump…”  VERY helpful!



      • In EP 5.0 at least, the gridlayout is extremely inefficient when you have large pages (and creates lots of excessive java code). I would try to replace that with normal html tables first
        • I am actually using the newer FormLayout. Also when I encountered this problem, I had a HTMLB table with rows and when a user clicked on a row it would display detailed info about the row in a form like manner. Initially I was using TextView for different field of this form corresponding to table columns. This created a lot of htmlb fields and I had switch to ItemList. With ItemList I didn’t have much control on the presentation. So finally I ended up created in 2-column table for the row details. Every row of this new table corresponds to a column of the earlier table.

          This has been working okay for me.

          • One way to avoide these kind of problems is to avoid using grid/form layouts. Instead you can use normal html

            tags. Grid layout generates lot of java code inside a method.