Neal,

thanks for your efforts. I switched to f:verbatim instead of x:div when
trying a recent nightly build in order to check if the problem would
disappear. This build introduced the x:html tag and refactored the x:div tag
yet none was registered with the MyFaces taglib.

I knew that the include path would cause confusion but they are definitely
correct. I take it as a decisive proof that I can see the contents of
taglibs.inc in the generated HTML output. So the include directive is
executed correctly but the JSP won't get compiled. I dunno, maybe it's got
something to do with the moonphases ...

The question when it is allowed to use non-jsf tags in a jsf page is
constantly puzzling me. While I have been told that this is strictly
forbidden I have seen lots of examples where exactly this is done,
apparently without any adverse effects. Then again I just started using jsf
and so there's hope that one day I get things sorted out nicely.

Anyway, your help was greatly appreciated. Sorry for the harsh tone of my
follow-up email, but I had been struggling with this problem for quite a few
days, sometimes well into the night, and was desperate.

Cheers,

Olaf

> -----Ursprüngliche Nachricht-----
> Von: Neal Haggard [mailto:[EMAIL PROTECTED]
> Gesendet: Mittwoch, 22. Juni 2005 17:28
> An: MyFaces Discussion
> Betreff: RE: [Tiles] Included tile not compiled (additional info)
>
>
> Olaf,
>
>    I don't see anything major that pops out at me.  One thing I
> do notice is you're using <f:verbatim> around <div>'s when you
> could just use the <x:div> tag instead.  Another important note
> is that in your top layout tile, I've found that you don't have
> to surround non-JSF tags in the <f:view> with <f:verbatim>, so
> you may find those weren't necessary anyway.  You still have to
> surround non-JSF tags with <f:verbatim> in subviews.  Why there's
> a difference, I don't know.
>
>    I don't know if it's a cut-n-paste error or not, but your
> include of your taglibs at the top of the files seems
> inconsistent.  In one you have a single '.', the other '..'.  You
> may want to look at that and make sure that resolves to the real URL.
>
> Neal
>
> -----Original Message-----
> From: Olaf Bergner [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, June 22, 2005 10:07 AM
> To: MyFaces Discussion
> Subject: AW: [Tiles] Included tile not compiled (additional info)
>
> Neal,
>
> thx for your prompt reply. Here's the - in my view - relevant
> snippet from my topmost layout JSP:
>
> <%-- BEGIN MAIN CONTENT AREA --%>
>       <f:verbatim>
>         <div id="content">
>         </f:verbatim>
>         <f:subview id="contentView">
>           <tiles:insert attribute="content" flush="false" />
>         </f:subview>
>         <f:verbatim>
>         </div>
>       </f:verbatim>
> <%-- END MAIN CONTENT --%>
>
> Here's the tile /organization/searchForm.jsp which won't get compiled:
>
> <h:form id="organizationSearchForm">
>   <f:verbatim>
>     <h1>
>     </f:verbatim>
>     <h:outputText value="#{msg['organization.headline.search']}" />
>     <f:verbatim>
>     </h1>
>   </f:verbatim>
>   <h:panelGrid columns="3">
>     <h:outputText
> value="#{msg['organization.label.searchform.byCommonFields']}" />
>     <h:inputText id="byCommonFieldsSearchString" styleClass="ewsgrey"
> value="#{organizationSearch.searchString}" />
>     <x:commandButton id="byCommonFieldsBtn" styleClass="ewsgrey"
> action="#{organizationSearch.searchByCommonFields}"
> image="#{msg['common.image.searchBtn']}" />
>      [more rows]
>   </h:panelGrid>
> </h:form>
>
> but this - /common/startPage.jsp will:
>
> <%@ include file="./inc/taglibs.inc" %>
> <f:verbatim>
>   <h1>
>   </f:verbatim>
>   <h:outputText value="#{msg['common.headline.home']}" />
>   <f:verbatim>
>   </h1>
> </f:verbatim>
>
> As I said in my original post: If I swap the contents of
> searchForm.jsp and startPage.jsp I can see the correct output for
> searchForm.jsp, but now startPage.jsp will be copied verbatim
> into the final HTML page. I think it was Arthur C. Clarke who
> said: "Any sufficiently advanced technology will be
> indistinguishable from magic." Glad that I happen to see this in
> my days ;-)
>
> Cheers,
>
> Olaf
>
> > -----Ursprüngliche Nachricht-----
> > Von: Neal Haggard [mailto:[EMAIL PROTECTED]
> > Gesendet: Mittwoch, 22. Juni 2005 15:27
> > An: MyFaces Discussion
> > Betreff: RE: [Tiles] Included tile not compiled (additional info)
> >
> >
> > Olaf,
> >
> >    The reason the URL is not changing is you need to specify in your
> > navigation rules that the case is a redirect by adding the <redirect
> > /> tag to the rule.  Something along the lines of:
> >
> > <navigation-rule>
> >       <from-view-id>*</from-view-id>
> >
> >       <navigation-case>
> >         <from-outcome>organization-search</from-outcome>
> >         <to-view-id>/organization/searchForm.jsp</to-view-id>
> >         <redirect />
> >       </navigation-case>
> > </navigation-rule>
> >
> >    As for your other issue (seeing the JSP source in the generated
> > HTML) we have not had that issue, and we are using tiles to pull
> > together the multiple layouts for our site.
> > Perhaps could you give us a code snippet that shows where your
> > 'content' tile is inserted in your layout tile definition and then
> > some of your searchForm.jsf or something?
> >
> > Sorry you're having such problems and hope they clear up,
> >
> > Neal Haggard
> > Senior Developer
> > SAS Institute
> >
> > -----Original Message-----
> > From: Olaf Bergner [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, June 22, 2005 9:06 AM
> > To: MyFaces Discussion
> > Subject: [Tiles] Included tile not compiled (additional info)
> >
> > Since nobody responded to my first post and sine further this problem
> > is starting to become a real showstopper potentially blocking our
> > adoption of JSF I try to give some further info, little as it may be.
> >
> > I have a main navigation bar for switching between modules, registered
> > as global navigation rules. If I switch from
> > /common/startPage.jsf[=tiles] to /organization/searchForm.jsf by
> > clicking on the navigation link
> > (h:commandLink) the URL in my browser remains unchanged, yet the
> > "sideActions" tile will be correctly inserted and transformed into
> > HTML. The "content" tile, though, will be inserted verbatim, i.e. I
> > can see the JSP source in the generated HTML. Only after a second
> > click on the same link does the URL change.
> >
> > If I change back to /common/startPage.jsf I need two clicks to change
> > the browser URL, yet the "sideActions" as well as the "content" tile
> > both will be inserted and transformed correctly.
> >
> > Since even after staring at the tiles-defs.xml for nearly a week
> > without noticing any structural differences between
> > /common/startPage.tiles and /organization/searchForm.tiles I strongly
> > suspect that this is a bug in MyFaces' tiles integration. Did anyone
> > encounter a similar phenomenon and maybe found a workaround for it?
> >
> > Thx,
> >
> > Olaf
> >
> > > -----Ursprüngliche Nachricht-----
> > > Von: Olaf Bergner [mailto:[EMAIL PROTECTED]
> > > Gesendet: Dienstag, 21. Juni 2005 13:35
> > > An: [email protected]
> > > Betreff: [Tiles] Included not compiled
> > >
> > >
> > > I just started using JSF, trying to get MyFaces' Tiles integration
> > > to work.
> > > So I created a layout page which uses tiles:insert to include the
> > > mainbar, the sidebar and the content pane. In my tiles definition
> > > file I have a base definition which all other definitions - two so
> > > far - extend.
> > >
> > > Here's my tiles definition file:
> > >
> > > <tiles-definitions>
> > >  <definition name="/ews.base" path="/template/layout.jsp"
> id="basePage">
> > >   <put name="mainNavigation" value="/common/mainNavigation.jsp"
> > > type="page"/>
> > >   <put name="sideActions" value="/common/sideActions.jsp"
> type="page"/>
> > >   <put name="content" value="/common/empty.jsp" type="page"/>
> > > </definition>  <definition name="/common/startPage.tiles"
> > > extends="/ews.base"
> > > id="startPage">
> > >   <put name="content" value="/startPage.jsp" type="page"/>
> > > </definition>  <definition name="/organization/searchForm.tiles"
> > > extends="/ews.base"
> > > id="organizationSearchForm">
> > >   <put name="content" value="/organization/searchForm.jsp"
> > > type="page"/>  </definition> </tiles-definitions>
> > >
> > > A <c:redirect url="common/startPage.jsf"/> will produce the desired
> > > effect, i.e. the start page is composed correctly and I can see the
> > > message startPage.jsp produces via <h:outputText/>.
> > >
> > > And here's the catch: if I do a <c:redirect
> > > url="organization/searchForm.jsf"/> I get a page with
> > > mainNavigation.jsp and sideActions.jsp correctly included and
> > > translated into HTML, yet the content of organization/searchForm.jsp
> > > is copied _verbatim_ into the HTML page. This means that I can see
> > > the JSP code from organization/searchForm.jsp in the generated
> > > page's source code.
> > >
> > > I started playing around with the contents of startPage.jsp and
> > > organization/searchForm.jsp and ended up swapping it, i.e I copied
> > > startPage.jsp's JSP code into organization/searchForm.jsp and vice
> > > versa. Lo and behold: I can see my organizationSearchForm on the
> > > start page, and organization/searchForm.jsp is still copied verbatim
> > > into the generated HTML output. So the problem _seems_ to be the
> > > tiles definition /organization/searchForm.tiles itself and _not_ the
> > > JSP content in organization/searchForm.jsp.
> > >
> > > So could anyone give me a clue what is going on here since I am on
> > > the verge of throwing up after staring at this phenomenon for the
> > > last four days? I am using myfaces-1.0.9 in JBoss 4.0.2 under JDK
> > > 1.4.2_08 and any help would be _greatly_ appreciated.
> > >
> > > Cheers,
> > >
> > > Olaf
> > > --------------------------------------------
> > > Easynet GmbH (http://www.de.easynet.net) Olaf Bergner, System
> > > Integrations Harburger Schlossstrasse 1, D-21079 Hamburg
> > > fon: +49-40-77175-434, fax: +49-40-77175-519 # Easynet is part of
> > > the easynet group plc (www.Easynetgroup.net)
> > >
> > >
> > >
> >
> >
>
>

Reply via email to