Ich habe meine commandLink (das ist der Abmeldelink) in die Vorlage Datei, die ist nicht innerhalb einer jsf Formular hinzugefügt.CommandLink ist nicht in einem JSF-Formular, weil ich es der Vorlage hinzugefügt habe. Es ist jedoch deaktiviert. Gibt es eine alternative Möglichkeit, es zu aktivieren?
MainTemplate.xhtml
<h:commandLink action="#{welcomeBean.logOutSession}" class="subAnchor" value="Log Out">
</h:commandLink>
auf der Webseite, die die Vorlage verwendet, ich habe alle Elemente in einer JSF Form:
NewWelcome.xhtml
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
template="/webpages/templates/MainTemplate.xhtml">
<ui:define name="infomationPartOfBody">
<h:form>
<div> Here i have all the page specific content </div>
</h:form>
</ui:define>
</ui:composition>
ich hoffte, dass die Abmeldung funktionieren würde, sobald ich die Vorlage in einer Seite mit einem JSF-Formular verwende. Der Logout-BefehlLink zeigt jedoch Fehler:
Ausloggen: Dieser Link ist deaktiviert, da es nicht in einem JSF-Formular verschachtelt ist.
Ich weiß eine klare Lösung besteht darin, dieses Element separat in jede der XHTML-Seiten, die die Vorlage verwenden würde, hinzuzufügen. Aber ich möchte, dass es in die Vorlage selbst hinzugefügt wird, da es ein gemeinsames Element in allen Seiten ist.
Jede Hilfe würde sehr geschätzt werden. Danke! :)
Schnitt: hier ist der Code meiner MainTemplate.xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<f:view>
<h:head>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.4/themes/cupertino/jquery-ui.css"/>
<script type="text/javascript" src="http://code.jquery.com/jquery-2.1.0.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
<script type="text/javascript" src="../JavaScriptPages/JQueryFile.js"></script>
<title>State Transport Department- Work Schedule</title>
<link rel="stylesheet" type="text/css" href="../CSS/CompleteTemplateCSS.css"/>
<link rel="stylesheet" type="text/css" href="../CSS/templateCSS.css"/>
</h:head>
<h:body>
<div class="container">
<div class="header">
<h:graphicImage id="img" value="http://s28.postimg.org/ksnr9zs5p/header.jpg" class="img" ></h:graphicImage>
</div>
<div class="menu">
<h:outputLabel class="welcomeNote" style="font-size: x-large; color: white; float: left;
margin: 8px 0 0 5px; text-shadow:0 0 3px white" value="#{welcomeBean.fullname}" />
<ul class="ulForMyAccount">
<li> <h:outputLabel value="My Account" id="mainAnchor"/>
<ul >
<li> <h:link value="Change my Password" outcome="/webpages/ChangePasswordxhtml.xhtml" rendered="true" class="subAnchor"/> </li>
<li><h:commandLink action="#{welcomeBean.logOutSession}" class="subAnchor" value="Log Out">
</h:commandLink> </li>
</ul>
</li>
</ul>
</div>
<div class="contentBody">
<div class="menuTable">
<table class="templateBody" >
<tr>
<td class="navigationLink" > <ul><li>
<h:link value="Home" outcome="/webpages/NewWelcome.xhtml" rendered="#{welcomeBean.home}" class="mainLinks"/>
</li></ul> </td>
</tr>
<tr>
<td class="navigationLink"> <ul> <li>
<h:link value="My Schedule" outcome="/webpages/MyTask.xhtml" rendered="#{welcomeBean.myTask}" class="mainLinks"/>
</li></ul></td>
</tr>
<tr>
<td class="navigationLink"> <ul> <li>
<h:link value="Employee Work Schedule" outcome="/webpages/EmpDutySched.xhtml" rendered="#{welcomeBean.workSchedule}" class="mainLinks"/>
</li></ul></td>
</tr>
<tr>
<td class="navigationLink"><ul> <li>
<h:link value="Allocate Work" outcome="/webpages/AllocateTask.xhtml" rendered="#{welcomeBean.allocateWork}" class="mainLinks"/>
</li></ul></td>
</tr>
<tr>
<td class="navigationLink"><ul> <li>
<h:outputLabel value="Report" rendered="#{welcomeBean.report}" class="reportMenu"/>
</li></ul>
<ul>
<li><h:link value="Project Wise Report" outcome="/webpages/ProjectWiseReport.xhtml" rendered="true" class="reportItems"/></li>
<li><h:link value="Employee Wise Report" outcome="/webpages/EmployeeWiseReport.xhtml" rendered="true" class="reportItems"/></li>
</ul>
</td>
</tr>
</table>
</div>
<ui:insert name="infomationPartOfBody">
</ui:insert>
</div>
<div class="footer"></div>
</div>
</h:body>
</f:view>
</html>
Könnten Sie das hinzufügen Code Ihrer Vorlage MainTemplate.xhtml? – user3489875
ich habe hinzugefügt. gütig sehen. – Shruti