2010-06-23 5 views
1

J'ai des problèmes dans l'implémentation de la navigation de menu dans JSF où j'utilise un header.jsp qui est inclus dans tous les autres jsps, de la page principale la navigation vers l'avant fonctionne bien mais si je veux aller à toute autre page en utilisant le menu déroulant Je reçois une erreur javascript comme f: n'a aucune valeur.problèmes dans la navigation de plusieurs pages dans JSF

ici est mon menu header.jsp partie

<li><a href="#" class="MenuBarItemSubmenu">Fund Maintenance</a> 
    <ul> 
    <li class="bottomline"><h:commandLink value="General Ledger Mapping" action="#{fyeSelection.getGLMappingSelection}"></h:commandLink> 
    <li class="bottomline"> 
     <h:commandLink value="File Upload" action="#{fyeSelection.getFYEUploadScreen}"></h:commandLink> 
    </li> 
    <li class="bottomline"> 
     <h:commandLink value="Provision Lock Down" action="#{fyeSelection.getProvisionScreen}"></h:commandLink> 
    </li> 
    <li class="bottomline"> 
     <h:commandLink value="Copy Provision for Tax Return" action="#{fyeSelection.getCopyProvisionTaxScreen}"></h:commandLink> 
    </li> 
    </ul> 
</li> 

les faces-config.xml est comme:

<managed-bean> 
    <description>FYE Selection Screen</description> 
    <managed-bean-name>fyeSelection</managed-bean-name> 
    <managed-bean-class> 
    com.bbh.tea.web.managedbeans.FisicalYearEndSelection</managed-bean-class> 
    <managed-bean-scope>request</managed-bean-scope> 

</managed-bean> 
<navigation-rule> 
    <from-view-id>/views/dashboardtemplate.jsp</from-view-id> 
    <navigation-case> 
    <from-outcome>ProvisionScreen</from-outcome> 
    <to-view-id>/views/provisionpackagelockdown.jsp</to-view-id> 
    </navigation-case> 
</navigation-rule> 


<navigation-rule> 
    <from-view-id>/views/dashboardtemplate.jsp</from-view-id> 
    <navigation-case> 
    <from-outcome>CopyProvisionTax</from-outcome> 
    <to-view-id>/views/copyprovisionfortaxreturn.jsp</to-view-id> 
    </navigation-case> 
</navigation-rule> 

<navigation-rule> 
    <from-view-id>/views/dashboardtemplate.jsp</from-view-id> 
    <navigation-case> 
    <from-outcome>GLMappingSelection</from-outcome> 
    <to-view-id>/views/generalledgerselection.jsp</to-view-id> 
    </navigation-case> 
</navigation-rule> 

et la classe est comme

/** 
    * @return the ProvisionScreen(screen) 
    */ 
public String getProvisionScreen() { 
    return "ProvisionScreen"; 
} 

/** 
    * @return the CopyProvisionTax(screen) 
    */ 
public String getCopyProvisionTaxScreen() { 
    return "CopyProvisionTax"; 
} 

/** 
    * @return the FYEUploadScreen(screen) 
    */ 
public String getFYEUploadScreen() { 
    return "FYEUploadScreen"; 
} 

toute aide ou suggestion est appréciée

Merci d'avance


Merci pour la précieuse contribution. Oui vous avez raison, j'utilisais l'intérieur mais, comme je suis un novice de JSF, je n'étais pas au courant de l'utilisation correcte des tags. Maintenant, après l'utilisation fonctionne bien. Auparavant, j'ai essayé de changer faces-config.xml pour l'utiliser au lieu de, mais je n'ai pas eu de chance car j'ai eu un problème de compilation avec tree-id. J'ai aussi une petite question, j'ai remarqué qu'Eclipse Galileo ne fournit pas de support de contenu pour les balises ui:. Y a-t-il une raison spécifique ou je dois changer les paramètres dans Eclipse?

Merci encore pour votre aide.

Cordialement, Ravi

Répondre

0

Je trouve la solution.

nous devons utiliser <h:outputLink au lieu de h:commandLink

Merci

0

Commandlinks a besoin d'être dans un formulaire POST. Est-ce que tout cela a été placé à l'intérieur d'un <h:form>? Il utilise JavaScript pour soumettre le formulaire parent. L'erreur JavaScript que vous avez est probablement liée au fait qu'il ne peut pas trouver l'élément de formulaire parent dans le DOM HTML. Quoi qu'il en soit, en utilisant les liens de sortie pour la navigation est un bien meilleur choix (SEO!). Alors allez-y avec ça.