| |
Struts Tutorials:
Struts2 Tag CheckBoxList , Checkbox, Iterator, IF
Struts2 Tag Library Example
Struts2 Tiles Example
Struts2 Tiles I18N Example
Struts2 Questions
Struts Tiles I18N Example
Struts Eclipse MVC
Struts2 Tags
Struts2 Example and Tutorial
Struts MVC
Struts2 Validation
Hibernate Tutorials:
Hibernate Case Study
Class Hierarchy Persist Example
Using Hibernate Interceptor
Hibernate Questions with Answer
Hibernate Many-to-Many Mapping Example
Hibernate one-to-many Mapping Example
Hibernate and ORM tools
Spring Hibernate Example
Hibernate SessionFactory Example
Hibernate Mapping Class Hierarchy
Hibernate Questions
Hibernate SessionFactory Questions
Spring Hibernate Example:
Spring Hibernate Case Study
Written By : ISHTEK
Title :
Struts2
Description :
Tags such as IF Iterator Tags More...
|
Written By : guddu
Title :
Struts Eclipse MVC
Description :
Step by step demonstration More...
|
Written By : Girish
Title :
Struts Tiles I18N Example
Description :
Code with Sample Action More...
|
Written By : ISHTEK
Title :
Struts2 questions
Description :
open for discussion More...
|
Written By : ISHTEK
Title :
Struts2 Tiles Example
Description :
with Code and article More...
|
Written By : ISHTEK
Title :
Struts2 Tiles I18N Example
Description :
with code explained article More...
|
Written By : Amit
Title :
Struts2 Tag Library Example
Description :
Tutorial More...
|
| Struts 2 JSF, Integration, Struts2, JSF Author : ISHTEK Date (Year/Month/Date): 2009-09-19
Integrating Navigational Flow for Struts2 using JSF | | Integrating JSF with Struts2 example code:
In this example I shall try to demonstrate a simple way
and may be one out of many ways of integrating JSF with
Struts2, using Plugin available with Struts2 Framework.
In this example, I shall be working on ways to achive
page and action navigation flow using Struts2 and
displaying target JSF page using JSF UI component.
So the index JSP page will have form and action Tags from
Struts2 Tag Library, and the next preview page will be
using JSF Tags from TagLibrary.
index.jsp
<%@ taglib uri="/struts-tags" prefix="struts2"%>
<html>
<head>
</head>
<body>
<struts2:form method="post" action="jsf-view" namespace="/sample-jsf">
<table>
<tr><td><struts2:textfield key="userName" label="Name :"/></td></tr>
<tr><td><struts2:textfield key="roll" label="Roll :"/></td></tr>
<tr><td colspan="2"><struts2:submit value="Register"/></td></tr>
</table>
</struts2:form>
</body>
</html>
|
Looking at this index.jsp file, I can say the Register button submit action
points to "jsf-view" with namespace as "/sample-jsf" and the two text fields
as userName and roll.
Now the struts.xml file will be having the mapping for this action and the
Action class along with the configuration for defining JSF related interceptors
for using JSF mapping as the result for success from the Action class file
action method.
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="jsf-example" namespace="/sample-jsf"
extends="jsf-default">
<action name="jsf-view" class="sample.ExampleJSFAction"
method="preview">
<interceptor-ref name="basicStack"/>
<interceptor-ref name="jsfStack"/>
<result name="success" type="jsf">
<param name="location">/preview.jsf</param>
</result>
<result name="input">/index.jsp</result>
</action>
</package>
</struts>
|
In order to use JSF related Tags in the preview.jsp file, we have to
define these interceptor-ref tags as mentioned in bold as shown above.
The Action class has two variables with same name as those defined
in the index.jsp file (userName, roll).
sample.ExampleJSFAction.java
package sample;
public class ExampleJSFAction
{
private String userName;
private String roll;
public ExampleJSFAction() {
}
public void setUserName(String arg) {
userName = arg;
}
public String getUserName() {
return userName;
}
public void setRoll(String arg) {
roll = arg;
}
public String getRoll() {
return roll;
}
public String preview() {
System.out.println(userName+" "+roll);
return "success";
}
}
|
the finsl preview JSP file is having JSF tags defined and the dynamic
values to this Page is comming from the Struts2 Action Object.
preview.jsp
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="sampleHtml" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="sampleCore" %>
<html>
<body>
<h4>Preview</h4>
<sampleCore:view>
<sampleHtml:form>
<table>
<tr><td>Name :</td><td><sampleHtml:outputText
value="#{action.userName}"/></td></tr>
<tr><td>Roll :</td><td><sampleHtml:outputText
value="#{action.roll}"/></td></tr>
</table>
</sampleHtml:form>
</sampleCore:view>
</body>
</html>
|
Software environment I have used to test this example is as follows:
1. JDK 1.5.x
2. Eclipse 3.2
3. Struts 2.1.6
4. JSF 1.0 specification API and Impl.
5. Jakarta Tomcat 6.0.18
And I have used following set of Jar files in the WEB-INF/lib folder,
in irder to run and test this example, and this works well in my local
software environment.
 | Author of this article/writeup has expressed his/her willingness |
to help or guide users with any technical difficulties he/she faces
while working with the example code environment setting up, running
and resolving any such exception raised during compile or at runtime.
You may ask for any technical doubt or seek technical help related to
this article by using following form to reach for technical help
from the Author for FREE.
This article's Author shall be reading your request and responding
within reasonable time (no resolution timeframe defined as such).
|
|
|
Commented By -> MarimuthuUdayakumar | Hi,
You are doing good job,I have seen you post
and comments.I am new for this (JSF + Struts2 )
environment.If you have any sample demo,just
show me..Then I would port your sample programs
in my applicataion ,If I get any trouble then I
would contact to you...Thanks in advance..Have a good day
Thanks,
|
| |
|
|