Tld :struts-layouts
papifafa
Messages postés
68
Statut
Membre
-
shift -
shift -
Bonjour,
à tous je sui en train de développez une application Web pour de l'intranet.
Pour cela j'ai utilisé le framework struts.
utilisation des formulaires et actions
ainsi qu'une connection à une BDD
toutefois je rencontre un probleme quand je veux passer de ma page d'acceuil à une autre page.jsp
en appellant l'action correspondante dans un lien pour plus de détail je vous met le code.
l'erreur qui apparait est la suivante:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: /jsp/TechnoLot.jsp(162,13) Unable to load tag handler class "fr.improve.struts.taglib.layout.field.SelectTag" for tag "layout:select"
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
org.apache.jasper.JasperException: /jsp/TechnoLot.jsp(162,13) Unable to load tag handler class "fr.improve.struts.taglib.layout.field.SelectTag" for tag "layout:select"
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:405)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:196)
org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1328)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1577)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
mon code:
Action:
public class TechnoAction extends DispatchAction
{
//private static final boolean String = false;
Connection connection = null ;
DataSource datasource = null;
Statement st = null;
ResultSet results = null;
DatabaseMetaData dma ;
ArrayList facilityList = new ArrayList();
ArrayList lot_nbmList =new ArrayList();
ArrayList prd_nameList = new ArrayList();
public ActionForward reportTechno(ActionMapping mapping, ActionForm form, HttpServletRequest req,
HttpServletResponse res) throws Exception
{
log.debug("TechnoAction: reportTechno starts...\n");
String forward = "reportTechno";
HttpSession session = req.getSession();
TechnoForm technoForm = (TechnoForm) session.getAttribute("forward");
if(technoForm == null ){
technoForm = new TechnoForm();
}
try
{
connecteDataBase(facilityList,lot_nbmList,prd_nameList);
technoForm.setFacilityList(facilityList);
technoForm.setLot_nbmList(lot_nbmList);
technoForm.setPrd_nameList(prd_nameList);
session.setAttribute("facilityList",facilityList);
session.setAttribute("lot_nbmList",lot_nbmList);
session.setAttribute("prd_nameList",prd_nameList);
session.setAttribute("reportTechno", technoForm);
req.getAttribute("SELECT ... FROM ...");
System.out.println("*****************************Facility: " + results.getString("facility"));
}
catch (SQLException e)
{
log.error(e.toString());
ActionMessages errors = new ActionMessages();
errors.add(new ActionErrors());
return mapping.findForward(forward);
}
finally
{
System.out.println("TechnoAction : reportTechno ends...\n");
}
return mapping.findForward(forward);
}
/*********************** connection at BDD *********************************************/
public void connecteDataBase(ArrayList facilityList, ArrayList lot_nbmList, ArrayList prd_nameList)
throws Exception
{
code ok
}
/*******************to executed query for Java Server Page*****************************/
public ActionForward dbOpenTechno(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception
{
//code ok
}
Form:
public class TechnoForm extends ActionForm
{
private static final long serialVersionUID = 1L;
private ArrayList facilityList = null;
private ArrayList lot_nbmList = null;
private ArrayList prd_nameList = null;
+ les get et set;
Ma jsp :
<html:form action="/techno.do">
<layout:select layout="false" property="facilityList">
<layout:option value="query" />
<layout:options collection="facilityList" property="element"/>
</layout:select>
</td>
<td>
<layout:select layout="false" property="lot_nbmList">
<layout:option value="query" />
<layout:options collection="lot_nbmList" property="element"/>
</layout:select>
</td>
<td>
<layout:select layout="false" property="prd_nameList">
<layout:option value="query" />
<layout:options collection="prd_nameList" property="element"/>
</layout:select>
</td>
struts-config:
<!-- ========== Form Bean Definitions =================================== -->
<form-beans type="org.apache.struts.action.ActionFormBean">
<form-bean name="LoginForm"
type="com.st.mcc.wam.struts.form.LoginForm" />
<!--<form-bean name="GestionLotForm"
type="com.st.mcc.wam.struts.form.GestionLotForm" />
-->
<form-bean name="TechnoForm"
type="com.st.mcc.wam.struts.form.TechnoForm" />
</form-beans>
<!-- ========================================= Global Exception Definitions -->
<global-exceptions>
</global-exceptions>
<!-- =========================================== Global Forward Definitions -->
<global-forwards type="org.apache.struts.action.ActionForward">
<forward name="Techno" path="/techno.do?reqCode=reportTechno" redirect="true"/>
</global-forwards>
<!-- ========== Action Mapping Definitions ============================== -->
<action-mappings type="org.apache.struts.action.ActionMapping">
<action path="/Login"
type="com.st.mcc.wam.struts.action.LoginAction"
name="LoginForm"/>
<forward name="index" path="/index.html"/>
<action path="/Techno"
type="com.st.mcc.wam.struts.action.TechnoAction"
name="TechnoForm"
scope="session" validate="false" input="/TechnoLot.jsp">
<forward name="reportTechno" path="/jsp/TechnoLot.jsp"/>
</action>
</action-mappings>
<!-- ================================= Controller Configuration =====-->
<controller processorClass="fr.improve.struts.taglib.layout.workflow.LayoutRequestProcessor" contentType="text/html;charset=UTF-8"/>
<!-- ======================== ===== Message Resources Definitions -->
<message-resources parameter="MessageResources" />
<!-- ===================== =============== Plug Ins Configuration -->
</struts-config>
à tous je sui en train de développez une application Web pour de l'intranet.
Pour cela j'ai utilisé le framework struts.
utilisation des formulaires et actions
ainsi qu'une connection à une BDD
toutefois je rencontre un probleme quand je veux passer de ma page d'acceuil à une autre page.jsp
en appellant l'action correspondante dans un lien pour plus de détail je vous met le code.
l'erreur qui apparait est la suivante:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: /jsp/TechnoLot.jsp(162,13) Unable to load tag handler class "fr.improve.struts.taglib.layout.field.SelectTag" for tag "layout:select"
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
org.apache.jasper.JasperException: /jsp/TechnoLot.jsp(162,13) Unable to load tag handler class "fr.improve.struts.taglib.layout.field.SelectTag" for tag "layout:select"
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:405)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:196)
org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1328)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1577)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
mon code:
Action:
public class TechnoAction extends DispatchAction
{
//private static final boolean String = false;
Connection connection = null ;
DataSource datasource = null;
Statement st = null;
ResultSet results = null;
DatabaseMetaData dma ;
ArrayList facilityList = new ArrayList();
ArrayList lot_nbmList =new ArrayList();
ArrayList prd_nameList = new ArrayList();
public ActionForward reportTechno(ActionMapping mapping, ActionForm form, HttpServletRequest req,
HttpServletResponse res) throws Exception
{
log.debug("TechnoAction: reportTechno starts...\n");
String forward = "reportTechno";
HttpSession session = req.getSession();
TechnoForm technoForm = (TechnoForm) session.getAttribute("forward");
if(technoForm == null ){
technoForm = new TechnoForm();
}
try
{
connecteDataBase(facilityList,lot_nbmList,prd_nameList);
technoForm.setFacilityList(facilityList);
technoForm.setLot_nbmList(lot_nbmList);
technoForm.setPrd_nameList(prd_nameList);
session.setAttribute("facilityList",facilityList);
session.setAttribute("lot_nbmList",lot_nbmList);
session.setAttribute("prd_nameList",prd_nameList);
session.setAttribute("reportTechno", technoForm);
req.getAttribute("SELECT ... FROM ...");
System.out.println("*****************************Facility: " + results.getString("facility"));
}
catch (SQLException e)
{
log.error(e.toString());
ActionMessages errors = new ActionMessages();
errors.add(new ActionErrors());
return mapping.findForward(forward);
}
finally
{
System.out.println("TechnoAction : reportTechno ends...\n");
}
return mapping.findForward(forward);
}
/*********************** connection at BDD *********************************************/
public void connecteDataBase(ArrayList facilityList, ArrayList lot_nbmList, ArrayList prd_nameList)
throws Exception
{
code ok
}
/*******************to executed query for Java Server Page*****************************/
public ActionForward dbOpenTechno(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception
{
//code ok
}
Form:
public class TechnoForm extends ActionForm
{
private static final long serialVersionUID = 1L;
private ArrayList facilityList = null;
private ArrayList lot_nbmList = null;
private ArrayList prd_nameList = null;
+ les get et set;
Ma jsp :
<html:form action="/techno.do">
<layout:select layout="false" property="facilityList">
<layout:option value="query" />
<layout:options collection="facilityList" property="element"/>
</layout:select>
</td>
<td>
<layout:select layout="false" property="lot_nbmList">
<layout:option value="query" />
<layout:options collection="lot_nbmList" property="element"/>
</layout:select>
</td>
<td>
<layout:select layout="false" property="prd_nameList">
<layout:option value="query" />
<layout:options collection="prd_nameList" property="element"/>
</layout:select>
</td>
struts-config:
<!-- ========== Form Bean Definitions =================================== -->
<form-beans type="org.apache.struts.action.ActionFormBean">
<form-bean name="LoginForm"
type="com.st.mcc.wam.struts.form.LoginForm" />
<!--<form-bean name="GestionLotForm"
type="com.st.mcc.wam.struts.form.GestionLotForm" />
-->
<form-bean name="TechnoForm"
type="com.st.mcc.wam.struts.form.TechnoForm" />
</form-beans>
<!-- ========================================= Global Exception Definitions -->
<global-exceptions>
</global-exceptions>
<!-- =========================================== Global Forward Definitions -->
<global-forwards type="org.apache.struts.action.ActionForward">
<forward name="Techno" path="/techno.do?reqCode=reportTechno" redirect="true"/>
</global-forwards>
<!-- ========== Action Mapping Definitions ============================== -->
<action-mappings type="org.apache.struts.action.ActionMapping">
<action path="/Login"
type="com.st.mcc.wam.struts.action.LoginAction"
name="LoginForm"/>
<forward name="index" path="/index.html"/>
<action path="/Techno"
type="com.st.mcc.wam.struts.action.TechnoAction"
name="TechnoForm"
scope="session" validate="false" input="/TechnoLot.jsp">
<forward name="reportTechno" path="/jsp/TechnoLot.jsp"/>
</action>
</action-mappings>
<!-- ================================= Controller Configuration =====-->
<controller processorClass="fr.improve.struts.taglib.layout.workflow.LayoutRequestProcessor" contentType="text/html;charset=UTF-8"/>
<!-- ======================== ===== Message Resources Definitions -->
<message-resources parameter="MessageResources" />
<!-- ===================== =============== Plug Ins Configuration -->
</struts-config>
A voir également:
- Tld :struts-layouts
- Tld driver - Télécharger - Pilotes & Matériel