| Author |
Message |
|
|
Hi, I've got a big big pb with datapaginator for 3 months now.
I have a table with 300 items or so. I display 5 per page. when I click on ">" (next page), sometimes it works, sometimes not, it seems to be working randomly... and the next click will bring my table back to the fisrt page. This occurs whatever the version of icefaces (I'm using 1.8.0 final now). So I've debugged to understand better what's happening.
I have a tablemodel which manages 2 subclasses of ListDatamodel named MyRowDataModel and MyColDataModel (easier to set breakpoints, they just call super methods). When my instance of MyRowDataModel.setRowIndex is called with "5" as the new rowIndex the paginator works (I can see the second page). Most often the new rowIndex is < 5.
I checked in debug mode, the "setFirst" seems to be done correctly on my HtmlDataTable.
BUT I NOTICED SOMETHING: my HtmlDataTable is created several times by the D2DFaceletViewHandler, and it seems odd to me, is this normal ??? setting a data on an object then recreating it, of course the data will be lost !
Is there an issue related to facelets in icefaces / portal environment ? I'm now making further tests, but if anyone has an idea...
Thanks
|
 |
|
|
Thanks, I deployed the push server and this strange bug dissapeared indeed. However I'm still facing same old problems with datapaginator (does not work ! next page does nothing the 1st time, the works the 2nd, the comes back to the first page on the third click...).
I'm afraid I must debug icefaces, I've been trying all kind of things to change this... Unless you have another good advice :-) ?
Thanks !
|
 |
|
|
I'm using icefaces 1.7.1_6 along with liferay 5.1.2, it works fine.
When I upgrade icefaces to 1.8.0 release there seems to be a bug somewhere, I cannot use my displays at all: the portlet is rendered correctly once, then immediately (just as if an ajax push had been made) re rendered, andthe portlet seems to display the liferay banner in it with my original screen; nothing works, the action buttons seem not to respond any clic; strangely, the connection status seems to be OK (the connection status component seems to be ready).
Any idea ? Thanks !
|
 |
|
|
hello,
I've got 2 portlets written in JSF Icefaces1.7.1_6.
- Fisrt portlet chains 2 JSF pages: page1 allows setting filters to retrieve a list of clients, and page2 displays the list of clients. First portlet's pages use a single managed bean "bean1" (scope session) to retrieve information they display.
- second portlet displays page3 only and is refreshed by means of ajax push (on demand renderer) when the end user choses some clients in the list displayed by page2. Second portlet uses managed bean "bean2" (scope session) to retrieve information displayed. "bean2" has been in the onDemandRenderer in an AsyncGroup which is refreshed when the clients selection changes.
The problem is here: I catch a FatalRenderingException "randomly" (I mean I don't fully understand why...) when I call the requestRender on the OnDemandRenderer. Once I had this exception the push does not work any more (FatalException every time).
It seems to me that the OnDemandRenderer I'm using is trying to refresh a page which does not exist any more... just as if my JSF page had been created several times (possible, I can navigate back and forth thru the pages)
So my questions:
+ is it possible that the scope of the bean registered in the on demand renderer "bean2" (session) be the reason for this bug ? I read in the developper doc that a Renderable usually has a request scope...
+ am I supposed to deregister my "bean2" from the OnDemandRenderer when the user is no more on the "page2" which allows changing the selection of clients ? this does not seem very logical to me...
+ In debug I saw in the exec stack of the "renderingException" a "View" object having a sequential number: if I understand well, JSF creates 1 such "View" per JSF page, each time it has to display one ? perhaps my JSF Page "page3" has been created several times ? Is there an event or something which allows me to deregister my bean when a view Object disappears ? This would probably avoid me trying to refresh a view which disappeared.
+ if several views are to be refreshed by an OnDemandRenderer, what happens if the first refresh ends in FatalRendering ? Are the other views refreshed or is the refresh process stopped ?
Well, a bit complicated, but I'd really appreciate any kind of help in understanding of this problem....
Thanks a lot !
|
 |
|
|
Yes I use the "columns" tag to create dynamically the tables and I allow the user to remove any column by changing his preferences in the portlet. The table is based on preferences which are based on a metamodel of the bean displayed in it.
I also use CSS, but I don't think the problem is here as I set no width in it.
IE and Firefox show the same problem.
OK I'll do an extract of my application but I need a bit of time, it's all part of an application based on a homebrew framework, I Must simplify this.
|
 |
|
|
Hello all,
Whenever I use the scrollable="true" in a datatable, the width of the table headers becomes non consistent with the cells which belong to the columns. Ex. the header "client" is 200px wide, and the values below are 250px, the "date" column has a header of 180px but the data below are 150 wide, and so on.
This on icefaces 1.7.1 (1.8* ==> worse !), in liferay 5.1.2 / JDK 1.6.
Is it a known issue ?
Thanks !
PS: I also posted the same topic in the forum "portals"
|
 |
|
|
Hello all,
Whenever I use the scrollable="true" in a datatable, the width of the table headers becomes non consistent with the cells which belong to the columns. Ex. the header "client" is 200px wide, and the values below are 250px, the "date" column has a header of 180px but the data below are 150 wide, and so on.
This on icefaces 1.7.1 (1.8* ==> worse !), in liferay 5.1.2 / JDK 1.6.
Is it a known issue ?
Thanks !
|
 |
|
|
When 2 portlets in a same WAR are displayed in the same page and the option "com.icesoft.faces.concurrentDOMViews" is set to "false", the 2 portlets show the same icefaces-geenrated content.
set it to "true" and all is fine. All was explained in the developper doc.
|
 |
|
|
I also think the deployment process is involved in the bug... but I still don't understand what's going on. When I have time I debug icefaces... but for now I'm fighting against time !
I'm connected to a main frame from which I get my data. I instanciate "business beans" (actually simple POJOs), strictly identical in both applications (the one which is working and the other).
No DB at all I avoid data replication, I know too much the problems behind the scene...
|
 |
|
|
Hi,
another amazing thing, not lucky these times...
I have 2 portlets coded in JSF / Icefaces (1.7.1). When I create a page in liferay, I put the first portlet, I add the "language" portlet, all is OK, my portlet works fine.
Now I put my 2nd portlet, and there seems to have context mixing somewhere: both portlets display the same JSF/ice page (the first JSF/ice page displayed, actually). It looks just as if a cache somewhere returned the same rendered objects for both portlets.
on ly my JSF/Ice portlets have the problem, the language portlet is fine.
I checked the classic files (portlet.xml, faces-config...) they're correct.
config: liferay.5.1.2/tomcat6 icefaces 1.7.1 jdk6 win XP... same on Linux
Help !!! thanks
|
 |
|
|
Hi,
I'm facing a really strange problem. I have a portlet that runs in liferay5.1.2-tomcat6 with icefaces (1.7.1_6 or 1.8-RC1, same bug occurs).
Several displays (.xhtml pages using facelet templates), one displays a List paginated with ice:datapaginator. Here's the bug: from times to times, the paginators is bogus (click on the button "next page" sends you either on the next page or most ofter does nothing or even goes back to the very first page, and same bogus behavior for all navigation buttons of the paginator).
2 days ago I had a version which worked fine. today I packaged a new war, and the bug re-appeared. I said "OK I must have made a mistake somewhere", so I compared the 2 deployed directories (say "myapp-OK" and "myapp-KO"). I replaced all changes in "myapp-KO" with old objects from "myapp-OK", recreated the war file, redeployed, recompared both directories: they were strictly identical.
But the bug was still there... I then installed 2 "fresh" liferay-tomcat6 bundles, deployed my new war in the first: bug still here. Deployed the non bogus war in the second: still no bug. And the deployed directories are still stricly identical (I used UltraCompare in full compare byte per byte).
So I imagined the portal must do a few things when it deploys. I thus compared my 2 different installations (compared the Tomcat directories). 3 files were different: the hsqldb lock file (.lck), a log (catalina.log if I remember well) and the hsqldb log ==> the inner DB used by liferay. the differences seem to be "autocommit" options at the end of the file.
So my question is: anyone has an idea about:
- the problems comes from liferay, Icefaces or my code ??? no more differences between the classes in both war files...
- if my war files are identical is it possible according to the JSR 168 / 286 that the webapps, once deployed in the same server, behave differently ?
- is there any other thing I should look for to explain the differences in behavior ?
Thanks, I'm really stunned... And my demo is set to be Friday :-(
|
 |
|
|
|
I investigated all day... and I'm stunned. I post a new message with more details.
|
 |
|
|
I'm not sure the problem is the same.
In my case it occurs wether the version is 1.8-RC1 ot 1.7.1_6...
One thing I'm (rather) sure is that once it appeared in the application the quick way to have it fixed is to reinstall the server and redeploy the application (same war).
Perhaps there's a trouble in the DB behind liferay (portlet prefs ?) ? I don't think so but it's a possibility. Or rather (I think) some temp file in Tomcat's context (work or temp dir, even if remove the work directory of my app the problem is still here).
Restarting, rebootin the server is useless; rebuilding the war also.
I must try with glassfish, to see if Tomcat may be part of the reason. I'll let you know...
Any further information welcome !
|
 |
|
|
Hi Stefan,
the point is the same project (same war, same Tomcat version including lib/ext) can work or not depending on I don't know what...
OK I'll try to post something by the end of the week, I must finish my prototype before Friday...
The problem "disappeared" this morning, I reinstalled a "clean" bundle Liferay5.1.2 / Tomcat6 and deployed my stuff on it. I tried to reproduce the bug, cleaning my browser's cache, rebuilding my war and Jars (deployed to lib/ext), but no way, it definitely works... It seems to me that this problem is related to Tomcat, when the server grows older, some bad stuff has to break somewhere (just as in Windows !) but I don't know what.
|
 |
|
|
hi, from times to times my ice:datapaginator behaves strangely: when I click on the button "next page" or on a page number or anything else supposed to help me navigating to another page, I don't reach the wished page but another one, sometimes the previous one, sometimes the very first page... I can't reproduce this at will, it seems that the paginator has its own will.
I even have a war working perfectly on a server and behaving like this on another server.
my config: ice 1.7.1 (or 1.8RC) on Tomcat6 and liferay portal 5.1.2, Jdk6
Anoyone has already seen this ? thanks !
|
 |
|
|
|
|