JavaServer Faces – ICEFaces or RichFaces?
http://forum.java.sun.com/thread.jspa?threadID=5202018
Here what Max Katz’s comments about the thread:
Yes, I saw this thread when it was posted. It’s somewhat of a one-sided comparison.
1) RichFaces offers both, page-wide and component-wide AJAX support.
a4j: tag library gives you page-wide and rich: tag library gives you
component-wide. You have a lot more flexibility with page-wide AJAX
support.
2) RichFaces a4j:push control
> the ICEfaces technology is not shackled to JBoss technology,
This is not true. 90% of the time I’m using RichFaces with just Tomcat
and no other JBoss technologies.
Finally, basic AJAX support in JSF 2.0 (released later this year) will
be more based on RichFaces approach.
Both component libraries are good, my recommendation is, pick one and
stick with it.
JSF Drag and Drop (DnD), JBoss Tools 2.0, RichFaces (ajax4jsf):
I chatted with Max Katz, Senior Systems Engineer at Exadel. We have talked about building JSF applications with DnD. JBoss offers JBoss Developer Studio 1.0 or JBoss Tools 2.0. This IDE let you DnD for simple applications but for any complex applications, you have to know manipulate codes. One good thing JBoss Developer Studio/JBoss Tools offers to preview code and it also leverage you to use RichFaces rich components in the IDE (Netbeans does not have a plug-in for RichFaces, no plan in near future). I also asked the differences between IceFaces and RichFaces. To answer to that he said, IceFaces is more proprietary than RichFaces.
HH: How would you compare with Sun’s Woodstock and RichFaces?
MK: In general, RichFaces has been around much longer. This means much
larger user base, more components, more stable, more support and
information available. There are lots of companies that use RichFaces in
production.
HH: How flexible RichFaces 3.1 to work with other component libraries like Trinidad/ADF Faces or Sun’s Woodstock 4.0. In our upcoming project, we need to show Gantt charts, graphs and ADF Faces already has components like that, how easy it would be to bring that component in to RichFaces?
MK: It should work. RichFaces doesn’t do anything *not* to allow you to mix and match other JSF components.
My recommendation is to pick just one library and use it. Mixing and matching component might sound like a great “feature”, but in reality you might create more problems than solutions.
HH: When is the next RichFaces scheduled to release? Any major improvements in the next release?
MK: http://jboss.com/index.html?module=bb&op=viewtopic&t=104575
The main differences between JBoss Developer Studio 1.0 and JBoss Tool 2.0:
JBoss Developer Studio 1.0 is cost $99.00 but with exactly same features JBoss Tool 2.0 is free, imagine that.
RichFaces 3.1 Important Links:
- RichFaces home
- Forum
- Live Demo
- Documentations (Great documentation)
- JBoss Tool 2.0 start up guide
- Why JBoss Developer Studio, and why you should care?
RichFaces Related Links:
Three RIA Tools Examined: JSF, Flex and JavaFX by Max Katz
Example of a JSF + Richfaces application: dVision
Happy Birthday, Ajax4Jsf (RichFaces)
Webnar: (October 30, 2007)
Other Links:
Gavin King’s JSF wish list for JEE 6
Adopting a Java Persistence Framework: Which, When, and What?
JSF/Web Tools:
Selenium IDE: Browser compatibility testing.
Selenium Remote Control is a test tool that allows you to write automated web application UI tests in any programming language against any HTTP website using any mainstream JavaScript-enabled browser:
JSFUnit is a test framework for JSF applications:
EasyMock provides Mock Objects for interfaces in JUnit tests by generating them on the fly using Java’s proxy mechanism. Due to EasyMock’s unique style of recording expectations, most refactorings will not affect the Mock Objects. So EasyMock is a perfect fit for Test-Driven Development.
Seam Books: Recommended by Gavin King (Founder of Hibernate project and Seam Project Lead).
1. Seam: Simplicity & Beyond with Java EE – Michael Yuan
2. Practical JBoss Seam Project – Jim Farley
3. Beginning JBoss Seam: From Novice to Professional – Joseph Faisal Nusairat
JSF Drag ‘n Drop with JDeveloper 11g
Toady is February 22, 2008. It was an interesting day for me at work. David (my co-worker) and I decided experimenting some JSF Drag and Drop (DnD) IDE to speed up our development process. David downloaded JDeveloper 11g (780 MB) and started doing some tutorials on ADF Faces but unfortunately ADF does not support IE 6. Click here to see the full story
I also had a discussion with JDL about JSF components Vs. Ajax components
HH: What would be advantages using JSF + Ajax components (Woodstock, Richfaces, ADF) vs. pure Ajax libraries (YUI, Tibco, JMaki, GWT) to build web UI?
JDL: The former gives you better integration with your backend objects. They’re also a lot easier to get working but, if you need really fine-grained control, or something for which there is no JSF component, then the latter may be your best bet
HH: I am wonder, if I use JSF in the backend, how easy it would be to work with those pure AJAX libraries like YUI or Tibco?
JDL: You’ll have to do something in your web app to handle the Ajax requests something like DynaFaces. Unless there’s a really good reason for them, I’m not sure I’d put myself through that kind of pain
JDL: YUI and maybe Tibco (I really don’t know anything about it) will not lend themselves well to DnD development. Dreamweaver is supposed to have nice facelets integration.
HH: Thanks for discuss with me about this issue. I am going to stick with JSF+Ajax components. I will take a look at the ICE Faces and see how easy to build UI on Netbeans and I will suggest David to use earlier version to develop ADF DnD.
JDL: /me nods though…jdev– :)(, no one uses it
JDL: JBoss Developer Studio has DnD gui building for RichFaces…checking on others… http://www.jboss.com/products/devstudio
HH: Did you know, ADF does not work on IE 6. ADF Faces 11 extends Apache MyFaces Trinidad though if you use ADF Faces 11 classes/components, I believe you will not be able to use IE6. If you use purely Apache MyFaces Trinidad then I think IE6 will be fine.
How to set/add message to the FacesMessage? h:message
Question was asked at the OKC JUG presentation, how to send an error message from server to client.
Here is the code snippet:
<h:inputText id=”email” value=”#{user.email}” validator=#{user.validateEmail}/>
<h:message for=”email”/>
public void validateEmail(FacesContext facesContext,UIComponent component, Object newValue) throws ValidatorException {
String email = newValue.toString();
if (email.equals("")) { // "".equals(email)
((UIInput)component).setValid(false);
FacesMessage message = new FacesMessage("Email address is required.");
facesContext.addMessage(component.getClientId(facesContext),message);
}
}
Here is an another great questioned was answered by Jason Lee
A ValueChangeListener Question and Answer:
HH: How hack proof the required=”true”, can some one by pass it and update my model?
JDL: It’s processed server side, which helps, i think it’s safe to assume that the field will be non-null and ” ” != null
Glassfish Default Welcome File List
http://test.amc.gov instead http://test.amc.gov/index.jsp
Under domains/domain1/cofig/default-web.xml
<!– ==Default Welcome File List========== –>
When a request URI refers to a directory, the default servlet looks for a “welcome file” within that directory and, if present, to the corresponding resource URI for display. If no welcome file is present, the default servlet either serves a directory listing, or returns a 404 status, depending on how it is configured.
If you define welcome files in your own application’s web.xml deployment descriptor, that list *replaces* the list configured here, so be sure that you include any of the default values that you wish to include.
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
It did not work so I went ahead added to my root application web.xml
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
After redeploy my app, it worked.
Now I can access my domain or app without typing index.jsp/index.html/index.htm
Application Server – Mime type set up
\SunAppServer9.1Update1\domains\domain1\config\default-web.xml
<mime-mapping>
<extension>ppt</extension>
<mime-type>application/powerpoint</mime-type>
</mime-mapping>
Sun Java Application Server 9.1 – OutOfMemoryError
We have installed SJSAS 9.1 on our production server (SPARC). It has 8 GB memory.
In the first day, we were getting whole lot of sever warning:
PWC1406: Servlet.service() for servlet TechnicalLibraryServlet threw exception java.lang.OutOfMemoryError: Java heap space
So, we have increased the heap size from default 192 to 512
Application Server –> JVM Settings –> JVM Options
![]()
How to check the current heap size?
Application Server – Monitor –> Runtime
How to Monitor SJSAS 9.1?
Setup a Monitor: Configuration –> Monitor
![]()
How to View?
Application Server –> Monitor (You may the Display Chart button to see nice looking graph)
How to check Open and Close Connections?
Application –> Monitor –> Resources
![]()
Full Admin Guide for SJSAS 9.1: http://docs.sun.com/app/docs/doc/819-3671/
——————————————Episode2——————————————————————–
Apparently by increasing heap size did not help much. So we decided to install SJSAS 9.1 Update 1
Java Forum Thread:
http://forums.java.net/jive/thread.jspa?threadID=36239&tstart=15
Results: Wonderful but what an experience. I wish Sun would have fixed this out of memory issue before distribute SJSAS 9.1. I guess that’s why they came up with UR 1, which makes sense.
-
Archives
- November 2009 (1)
- July 2009 (1)
- June 2009 (5)
- May 2009 (2)
- April 2009 (4)
- March 2009 (2)
- January 2009 (3)
- December 2008 (1)
- November 2008 (2)
- October 2008 (1)
- September 2008 (3)
- August 2008 (2)
-
Categories
-
RSS
Entries RSS
Comments RSS