[jboss-user] [JBoss jBPM] - Page flow and facelet templates

chawax do-not-reply at jboss.com
Mon Oct 1 08:51:03 EDT 2007


Hi,

In a Seam application, I use JPDL to define pageflows. All pages of my application use facelet templates. All transitions defined in my pageflow work well, but I have a problem with links defined in my template, for example in a header : they throw a "Illegal navigation" error. What I understood from this message is that you can't go to a transition that is not modeled in JPDL. So I guess I should model it in my JPDL. But when you model your page flow with JPDL, you can't guess which links will exist in the template ! And just imagine you add a new link in the template, does it mean you have to change all your pageflows ? So is there a way to prevent Seam (or JBPM engine ; I don't know exactly if it's a Seam or JBPM problem) from checking navigation for some links ? 

A piece of my JPDL pageflow definition :

<page name="confirmationDemandeur" view-id="/confirmationDemandeur.xhtml">
  |    	  	<redirect/>
  |       	<transition name="suivant" to="choixMotif"></transition>
  |       	<transition name="changerDemandeur" to="choixDemandeur"></transition>
  | </page>

The corresponding JSF page :

<html     xmlns:s="http://jboss.com/products/seam/taglib"
  |           xmlns:ui="http://java.sun.com/jsf/facelets"
  |           xmlns:f="http://java.sun.com/jsf/core"
  |           xmlns:h="http://java.sun.com/jsf/html"
  |           xmlns:rich="http://richfaces.org/rich"
  | 		  xmlns:a4j="http://richfaces.org/a4j">
  | 
  | <ui:composition template="templates/template.xhtml">
  | <ui:define  name="body">
  |     <h:messages globalOnly="true" styleClass="message"/>
  |     <rich:panel >
  |     <f:facet name="header">Demande d'absence - Demandeur</f:facet>
  |     <p>Choisissez le demandeur</p>
  |     <h:form>
  | 	<div>
  | 		<h:outputText value="#{demandeAbsence.matriculeDemandeur}" />
  | 		 - 
  | 		<h:outputText value="#{demandeAbsence.infosDemandeur}" />
  | 	</div>
  | 	<div>
  | 		<h:commandButton id="cmdAutreDemandeur" value="Autre demandeur" action="changerDemandeur" />
  | 		<h:commandButton id="cmdContinuer" value="Continuer" action="suivant" />
  | 	</div>
  | 	</h:form>
  |     </rich:panel>
  | </ui:define> 
  | </ui:composition>
  | </html>

The template.xhtml template :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  |                       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  | <html xmlns="http://www.w3.org/1999/xhtml"
  |       xmlns:ui="http://java.sun.com/jsf/facelets"
  |       xmlns:h="http://java.sun.com/jsf/html"
  |       xmlns:f="http://java.sun.com/jsf/core"
  |       xmlns:s="http://jboss.com/products/seam/taglib">
  | <head>    
  |     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  |     <link href="css/theme.css" rel="stylesheet" type="text/css" />
  | </head>
  | <body>
  |     <ui:include src="menu.xhtml" />
  |     <div class="body">
  | 	<ui:insert name="body"/>
  |     </div>
  | </body>
  | </html>

The menu.xhtml :

<rich:toolBar 
  |      xmlns="http://www.w3.org/1999/xhtml"
  |      xmlns:ui="http://java.sun.com/jsf/facelets"
  |      xmlns:h="http://java.sun.com/jsf/html"
  |      xmlns:f="http://java.sun.com/jsf/core"
  |      xmlns:s="http://jboss.com/products/seam/taglib"
  |      xmlns:rich="http://richfaces.ajax4jsf.org/rich">
  |      <rich:toolBarGroup>
  |          <s:link view="/home" value="Accueil" />
  |      </rich:toolBarGroup>  
  | </rich:toolBar>

The problem deals with the /home link.

I work with Seam 2.0.0.CR1 and JBPM 3.2.2
Any help appreciated ;)
Thanks in advance

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4090214#4090214

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4090214



More information about the jboss-user mailing list