voyent
Messages posted by: PeterReinecke  XML
Profile for PeterReinecke -> Messages posted by PeterReinecke [29] Go to Page: 1, 2 Next 
Author Message
Is there any more information about this problem?

I have the same problem with IceFaces 4.2.0 in all browsers.
Thanks for the update, everything is fine now :)
Title says all :)

I know there is a specific ICESOFT repo but it would be better if it would be available in the central maven repo.

Additional notice: For me the download function (http://www.icesoft.org/java/downloads/icefaces-downloads.jsf) is not working at the moment...
Ok, sorry, I just found this issue: http://jira.icesoft.org/browse/ICE-10998

As this is fixed, you may close the other issue as duplicate.
I just found that there is already a Jira issue: http://jira.icesoft.org/browse/ICE-10990

As there didn't happen anything for a year, can you please give a statement regarding this?


Similiar to http://www.icesoft.org/JForum/posts/list/17715.page#sthash.1SnIyBRs.dpbs and http://www.icesoft.org/JForum/posts/list/16785.page#sthash.LESsdAY7.dpbs and http://jira.icesoft.org/browse/ICE-6657

If you attach Code:
?ice.window=%3C/script%3E%3Cscript%3Ealert(%27test%27)%3C/script%3E
to the URL, the Javascript will get executed.

Any tips to fix this manually?
This is definitely a bug and not the desired behavior for any user.

If possible, please fix it in the open-source version if IceFaces 4.x.
I got it working, I have to add the class ui-toggled on the element which has class ui-icon-triangle-1-n or ui-icon-triangle-1-s.

Example:

Code:
$('#files\\:fileTable\\:name').find('a.ui-icon-triangle-1-s').addClass('ui-toggled');
While implementing my workaround i faced another issue.

As described in the previous post, I try to click the header column sorting buttons via jQuery.

When I do a click like this

Code:
$('#files\\:fileTable\\:name').click();


the parent div of the integrated sorting buttons is clicked, and the data gets sorted ascending. With a second click the data gets sorted descending. This works.

In order to have a direct connection between my buttons and the integrated sorting buttons, I have to click an ASC or DESC sorting button directly.

To do this I tried:

Code:
$('#files\\:fileTable\\:name .ui-icon-triangle-1-n').click();


and

Code:
$('#files\\:fileTable\\:name .ui-icon-triangle-1-s').click();


The different class names indicate if it is the ASC or DESC button.

But this click doesn't work, it doesn't seem to trigger anything?
I have a ace:dataTable (which uses lazy loading) and I want to use the filterBy feature for a specific ace:column.

This works fine with the following code:

Code:
<ace:dataTable value="#{folderList.values}" var="entry" id="fileTable"
                                    paginator="true"
                                    paginatorPosition="bottom"
                                    paginatorAlwaysVisible="true"
                                    widgetVar="fileTable"
                                    lazy="true" >
 
 
 <ace:column>
   <input type="checkbox" name="toggle" />
 </ace:column>
 
 <ace:column sortBy="#{entry.name}" filterBy="#{entry.name}"> 
 #{entry.name}
 </ace:column>
 
 </ace:dataTable>
 


but it doesn't work properly if I place the columns inside of a ace:columnGroup like this:

Code:
<ace:dataTable value="#{folderList.values}" var="entry" id="fileTable"
                                    paginator="true"
                                    paginatorPosition="bottom"
                                    paginatorAlwaysVisible="true"
                                    widgetVar="fileTable"
                                    lazy="true">
 
 
 <ace:columnGroup>
        <ace:row>
             <ace:column headerText="Select"/>
              <ace:column headerText="Name" sortBy="#{entry.name}" filterBy="#{entry.name}"/>
         </ace:row>
 </ace:columnGroup>
 
 <ace:column> 
     <input type="checkbox" name="toggle" /> 
 </ace:column> 
 <ace:column>
     #{entry.name}
 </ace:column>
 
 </ace:dataTable>


It looks like a request is sent if a key is typed into the filter input, but it doesn't have information about the column which has to be filtered (Map<String, String> filters is empty).

If I look into the rendered HTML it is exactly the same, but the filter input field becomes a different id.

Is there anything wrong with this "setup" or is this a bug?

Thanks for the reply. I can imagine that this is a complex feature, but I guessed that there has to be some method like this because somehow the sorting state has to be set on the datatable representation, because the datatable seems to know this state internally.

Anyway, I found a simple workaround: I hide the clickable column headers and click them via JavaScript when my external sort button is clicked.
I have an ace:dataTable which uses lazyLoading.

Is it possible to sort the data via an external (not inside of the table) button or dropdown, instead of using the clickable column headers? If yes, how can this be implemented?

If there is no possibility to trigger it directly from the client-side, is it possible to apply the sorting to the datatable with the Java API (inside the backing bean)? I know that I can just modify the value-list which backs the table to hold the sorted values, but I guess this will only work for the first page and not in combination with the integrated pagination,

I guess there must be something like this:

Code:
 DataTable table = getDataTable();
 
 table.setSortBy("something");  <-- I'm looking for something like this
 


but I can't find it...
Thanks for the reply, I'll try to patch IceFaces 3.3.0 on my own.
As there is no 3.4.0 release and I don't want to to change to IceFaces 4 now, is there a workaround or another solution for the normale IceFaces 3.3.0?

Thanks for the reply and you are right, the javax.faces.STATE_SAVING_METHOD must be set to client to prevent session creation. I forgot to mention that.

When you say

Client state saving mode is not supported by ICEfaces - it is required to use SERVER state saving mode. 


do you mean that it isn't possible in general because the options to disable AJAX on an IceFaces page don't seem to work.

As you can see the page in my project is already a "non-IceFaces-page" but I also know that IceFaces provides AJAX capabilities on every page when the jar is in the web applications lib folder.

I tried the following:

Code:
<?xml version='1.0' encoding='UTF-8' ?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml"
       xmlns:h="http://java.sun.com/jsf/html"
       xmlns:f="http://java.sun.com/jsf/core"
       xmlns:ui="http://java.sun.com/jsf/facelets"
       xmlns:icecore="http://www.icefaces.org/icefaces/core">
     <icecore:config render="false"/>
     <h:head>
         <title></title>
     </h:head>
     <h:body>
         Hello #{indexHandler}
 
         <h:form>
             <f:ajax event="click" disabled="true" /> 
             <h:commandButton id="b1" value="checkSession" action="#{indexHandler.checkSession}"/>
         </h:form>            
 
         <br />
     </h:body>
 </html>


This doesn't help, also setting the context-param org.icefaces.render.auto to false seems to not make a difference.

If it is really not possible, I have another backup option because the web application is inside an EAR. I could separate the pages which shouldn't create a session into another WAR which doesn't contain IceFaces. But I would prefer a solution which only needs to set some parameters.

Anyway, thank you for your time and the help.



 
Profile for PeterReinecke -> Messages posted by PeterReinecke [29] Go to Page: 1, 2 Next 
Go to:   
Powered by JForum 2.1.7ice © JForum Team