voyent
Messages posted by: jerome  XML
Profile for jerome -> Messages posted by jerome [16] Go to Page: 1, 2 Next 
Author Message
Regarding debug page rendering, I've found this :
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=97431

Regards,
Jerome.
Here is a workaround for the @RequestParameter bug:

1) Add this method to PersistentFacesServlet (taken from BlockingServlet) :

Code:
private Map convertParametersMap(Map parameters) {
         Map convertedParameters = new HashMap(parameters);
         Iterator iterator = convertedParameters.entrySet().iterator();
         while (iterator.hasNext()) {
             Map.Entry entry = (Map.Entry) iterator.next();
             String[] values = (String[]) entry.getValue();
             if (values.length > 1) {
                 // convert the String[] to a List
                 entry.setValue(Arrays.asList(values));
             } else if (values.length == 1) {
                 // convert the String[] to a String
                 entry.setValue(values[0]);
             }
         }
 
         return convertedParameters;
     }


2) In PersistentFacesServlet, replace :
Code:
copyRequestParameters(request.getParameterMap(),
                                   facesContext
                                           .getExternalContext().getRequestParameterMap());


by :

Code:
Map map = request.getParameterMap();
             
             copyRequestParameters( map, facesContext.getExternalContext().getRequestParameterMap() );
 
             if ( facesContext instanceof BridgeFacesContext ) {
             	BridgeFacesContext bridgeFacesContext = (BridgeFacesContext) facesContext;
             	BridgeExternalContext bridgeExternalContext = (BridgeExternalContext) bridgeFacesContext.getExternalContext();
             	
             	bridgeExternalContext.populateRequestParameters( convertParametersMap( map ) );
             }         	
 


I don't know if this patch is appropriate, but now, you should be able to use the @RequestParameter and Seam built-in debug page.

One issue remains: data tables inside debug.xhtml are not rendered. I am still investigating. Could someone at Icefaces help us ?

Regards,
Jerome.

I forgot to mention that the @RequestParameter annotation is not supported when using conversation-scoped (stateful) session beans.

Regards,
Jerome.
Hello,

I'm using Seam 1.1 and Icefaces 1.5.1 and I've noticed a few problems :
- Icefaces does not seem to support @RequestParameter. Each time I try to use this annotation, I get an exception in JBoss (sometimes it's a javax.faces.el.EvaluationException, sometimes "EJBNoSuchObjectException: Could not find Stateful bean" ...);
- Icefaces does not support the Seam Debug Page. I believe this is due to the component name (org.jboss.seam.debug.introspector) and Seam uses $ to indicate a qualified component name.

Are there workarounds for these 2 issues ?

Regards,
Jerome.
Hi Philip,

Thank you but I had already tried that.

The problem here is that when I select another tab and then come back to the tab containing the iframe, its content is always refreshed: I lose the current view and I am sent back to the initial iframe view.

Is there a way to maintain iframe content ?

Basically, I'd like to use navigation rules inside a panelTab while maintaining Seam conversations. Using an iframe would allow me to achieve to some kind of dynamic includes for page subviews.

Regards,
Jerome.

Hello,

Do you have any idea ?

I'd like to keep navigation rules, and possibly page flows, but how could I do that with Icefaces ? in a PanelTabSet ?

I really need an idea.

Regards,
Jerome.
Hello,

I am using Icefaces 1.5 (with support for Seam) and Seam 1.1 CR1.

In order to support navigation rules and page flows inside a panelTabSet and support Seam conversations, would it be possible to use an iframe to render content in each tab ?

Like in the component showcase demo with the dynamic tab panel, but using an ice:outputText to render an iframe ?

Regards,
Jerome.

PS: I tried to use an <object> tag to conform to strict xhtml but that did not work inside a panelTab.



Thank you Philip.

I will have to wait a little bit before I can apply your patch to BridgeExternalContext because for now I don't have access to the latest source code.

Do you know where I could find D2DSeamFaceletViewHandler.java so that I can rebuild Icefaces ?

Regards,
Jerome.
Thank you Philip,

I've found out what could be the source of the problem: in BridgeExternalContext.java, method getRequestCookieMap()
always throws an UnsupportedOperationException(). The problem is that Seam built-in components might be using cookies to persist preferences (ie
<property name="cookieEnabled">true</property>).

Regards,
Jerome.

Hello,

I am still testing Seam and Icefaces integration.

I am using Seam 1.1 (from CVS) and Icefaces 1.5 (bundled with the Seam/Icefaces booking application, including the D2DSeamFaceletViewHandler).

The Seam Debug Page is no longer available. I get the following error:
Code:
(...) rendered="#{org$jboss$seam$debug$introspector.attributes!=null}": Exception getting value of property a
 ttributes of base of type : org.jboss.seam.debug.Introspector$$EnhancerByCGLIB$$5143f993


I believe it's caused by the way Seam uses a $ to indicate a qualified component name in a JSF expression. For instance, if you try to use this:
<component name="org.jboss.seam.theme.themeSelector">
<property name="availableThemes">
<value>default</value>
</property>
</component>

you will probably get this:
Code:
(...)Cannot get value for expression '#{org$jboss$seam$theme$theme}'


Is there a CVS/SVN repository available somewhere ?

Regards,
Jerome.
Hello,

I am using Seam 1.1 Beta 2 (latest from CVS, running JBoss 4.0.5 with MyFaces 1.1.4) and Icefaces 1.5. I am using the Icefaces libraries bundled with the Seam/Icefaces integration example (the ones that come with D2DSeamFaceletViewHandler).

I have this:
Code:
<ice:dataTable id="someId" value="#{someList}" var="someData" rendered="#{someList.rowCount>0}"
 				sortColumn="#{myBean.columnSort}" sortAscending="#{myBean.ascendingSort}"
 				columnClasses="columnLeftAlign, columnLeftAlign, columnLeftAlign, columnLeftAlign, columnLeftAlign"
 				scrollable="#{myBean.scrollableListEnabled}" scrollHeight="#{myBean.scrollableListHeight}"
 				columnWidths="20%,20%,20%,20%,20%">


With columnWidths given in %, only datatable headers will be resized when maximizing browser window (or simply resizing). Datatable columns won't be resized.

Is this a known bug ? Is there a workaround ?

Regards,
Jerome.

PS: I am also using facelets.



Hello,

I am using Seam 1.1 Beta 2 (latest from CVS, running JBoss 4.0.5 with MyFaces 1.1.4) and Icefaces 1.5. I am using the Icefaces libraries bundled with the Seam/Icefaces integration example (the ones that come with D2DSeamFaceletViewHandler).

In a datatable, I have a rowSelector and I am trying to bind a selectionListener to a stateful bean method like this:
<ice:rowSelector multiple="#{myBean.multipleSelectionEnabled}" value="#{dataTableList.selected}" selectionListener="#{myBean.rowSelectionListener}" />

But the rowSelectionListener is never called. As a matter of fact, it seems like the binding never occurs since I can put any value inside the selectionListener attribute.

Do you have any idea ? Is this a known bug ? Is there any workaround ?

Regards,
Jerome.
Hi,

I faced the same issue when trying to bind a tabset to a Seam component (a simple java bean). A workaround was to copy the Icefaces libs in JBoss server lib directory.

Sam, you may be facing the same issue here (or similar).

Regards,
Jerome.
Hello Sam,

It might be a classloader/"class visibility" issue.

Regards,
Jerome.
Thank you Philip.

Did you know about the commandSortHeader/datatable/ %columnWidths bug ? Is there a workaround ?

Regards,
Jerome.



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