El lun, 17-07-2006 a las 11:28 +0200, Cyriaque Dupoirieux escribió: > le 17/07/2006 10:46 Thorsten Scherler a écrit : > > El lun, 17-07-2006 a las 01:18 -0700, Cyriaque Dupoirieux (JIRA) > > escribió: > > > >> [ > >> http://issues.apache.org/jira/browse/FOR-893?page=comments#action_12421554 > >> ] > >> > >> Cyriaque Dupoirieux commented on FOR-893: > >> ----------------------------------------- > >> > >> This still does not work with me... > >> In the following thread : > >> http://marc.theaimsgroup.com/?t=115269589100002&r=1&w=2 > >> I explained that my specific fv files were found (still in xdocs > >> directory...) if I inverted the two <act > >> type="RecursiveDirectoryTraversalAction"> tags. > >> I had no problem with the {1}... > >> Now, If I invert the two tags, it does not work anymore. > >> > > > > Did you updated the locationmap of the dispatcher and builded the > > plugin. > > > Yes, this morning... > > The {../1} is only working if you use the head of locationmap.xml! You > > need > > <match pattern="dispatcher.structurer.resourceType.**"> > > <select> > > <act type="RecursiveDirectoryTraversalAction"> > > <parameter value="{../1}" name="request"/> > > ... > > > > I tested this and it works like a charm for me. > > > indeed :-( . > > I tested successfully: > > - <act type="sourcetype" src="{project:content.xdocs}{1}.xml"> (e.g. > > document-v20.fv) > > - <act type="resourceTypeAction"> (e.g. xhtml.fv) > > - <act type="RecursiveDirectoryTraversalAction"> > > <parameter value="{project:resources}structurer/url/" > > name="projectDir"/> > > - <act type="RecursiveDirectoryTraversalAction"> > > <parameter value="{project:content.xdocs}" name="projectDir"/> > > > > I have > > structurer/ > > |-- resource-types > > | |-- document-v20.fv.bck > > | `-- xhtml.fv.bck > > `-- url > > `-- common.fv.bck > > > > Where I renamed all views to *.bck as soon as they worked successfully. > > The last one is in my project dir (the old default place). > > > > > Ok, here is a good summary of the different cases that can be met in my > site : > > xdocs/ > |-- pelt.vf (taken into account) > |-- livres/ > | |-- pelt.fv (not taken into account by the files in the livres > directory, the xdocs/pelt.fv is used instead...) > `-- jeux/ > |-- ultima.xml (this one is generated with xdocs/pelt.fv which is good) > |-- ultima3.xml > |-- ultima3.fv (this one is taken into account - it corresponds to > <act type="sourcetype" src="{project:content.xdocs}{1}.xml"> if I > understand)
no. It belongs to: <match pattern="resolve.structurer.**"> <select type="exists"> <!-- project-based url-based (url location) --> <location src="{project:resources}/structurer/url/{1}{project:theme-ext}" /> <!-- project-based url-based (xdocs location) [depreciated]--> <location src="{project:content.xdocs}{1}{project:theme-ext}" /> ^^^^^^^^^^^^^^^^^^^^^^this^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ <act type="sourcetype" src="{project:content.xdocs}{1}.xml"> <!-- Sourcetype based http://forrest.apache.org/docs/cap.html--> <location src="lm://dispatcher.structurer.resourceType.{sourcetype}" /> </act> Assuming ultima3.xml is document-v20 and you have in your project {project:resources}/structurer/resource-types/document-v20.fv then this would match the sourcetype, but not in the current structure of your project since ^^this^^ is *before* the sourcetype action. > `--ultima2/ > |-- mondes/ > |-- map10.xml > `-- pelt.fv (this one is not taken into account by the > map10.xml, the xdocs/pelt.fv is used instead...) Hmm, meaning the traversal action is not working. I expect that it is because of {1}. > > Please, can I have more logs with the dispatcher java classes, I may > find my problem alone if it works with you... I am not sure. This is not a dispatcher problem but more a locationmap one. The dispatcher transformer is coming into place later. However you can do something like: Index: src/java/org/apache/forrest/dispatcher/acting/RecursiveDirectoryTraversalAction.java =================================================================== --- src/java/org/apache/forrest/dispatcher/acting/RecursiveDirectoryTraversalAction.java (revisión: 422657) +++ src/java/org/apache/forrest/dispatcher/acting/RecursiveDirectoryTraversalAction.java (copia de trabajo) @@ -96,6 +96,7 @@ this.prepare(parameters, source); String uri = this.getProjectDir() + this.getRequest() + this.getProjectExtension(); + getLogger().warn("RecursiveDirectoryTraversalAction trying to use uri: "+uri); Map returnMap = act(uri); return returnMap; } @@ -116,6 +117,7 @@ this.computeResponseURI(uri, src); //src = resolver.resolveURI(uri); if (this.map.containsKey("uri")) { + getLogger().warn("RecursiveDirectoryTraversalAction found at location: "+uri); return this.map; } else { return null; For debug e.g the RecursiveDirectoryTraversalAction and see what the uri is. You can see it with tail -f build/webapp/WEB-INF/logs/*.log|grep RecursiveDirectoryTraversalAction which should return something like: WARN (2006-07-17) 16:08.49:702 [core.modules.mapper.lm] (/search.html) PoolThread-4/RecursiveDirectoryTraversalAction: RecursiveDirectoryTraversalAction trying to use uri: /home/thorsten/src/x/blog/src/documentation/resources/structurer/url/search.fv WARN (2006-07-17) 16:08.49:705 [core.modules.mapper.lm] (/search.html) PoolThread-4/RecursiveDirectoryTraversalAction: RecursiveDirectoryTraversalAction trying to use uri: /home/thorsten/src/x/blog/src/documentation/content/xdocs/search.fv WARN (2006-07-17) 16:08.49:705 [core.modules.mapper.lm] (/search.html) PoolThread-4/RecursiveDirectoryTraversalAction: RecursiveDirectoryTraversalAction found at location: /home/thorsten/src/x/blog/src/documentation/content/xdocs/search.fv In any case please do [EMAIL PROTECTED]:~/src/apache/forrest/trunk/main$ ./build.sh clean [EMAIL PROTECTED]:~/src/apache/forrest/trunk/main$ ./build.sh before you test. Make sure that forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher$ svn diff locationmap.xml returns nothing. salu2 > > Salutations, > Cyriaque, > >> If I replace the {../1} by the previous {1} : > >> <act type="RecursiveDirectoryTraversalAction"> > >> <parameter value="{1}" name="request"/> > >> <parameter value="{project:theme}" name="projectFallback"/> > >> <parameter value="{project:theme-ext}" name="projectExtension"/> > >> <parameter value="{project:content.xdocs}" name="projectDir"/> > >> <!-- xdocs [depreciated] > >> project-based theme-based = directory-based / parent-directory > >> based (recursively) --> > >> <location src="{uri}" /> > >> </act> > >> <act type="RecursiveDirectoryTraversalAction"> > >> <parameter value="{../1}" name="request"/> > >> <parameter value="{project:theme}" name="projectFallback"/> > >> <parameter value="{project:theme-ext}" name="projectExtension"/> > >> <parameter value="{project:resources}structurer/url/" > >> name="projectDir"/> > >> <!-- url > >> project-based theme-based = directory-based / parent-directory > >> based (recursively) --> > >> <location src="{uri}" /> > >> </act> > >> It works again. > >> > >> I reopen the FOR... > >> > > > > > > Hmm, it is hard to assist on this since it is working fine for me. > > > > Did you change the locationmap.xml or have implemented own matches in > > your project lm? > > > > Can somebody else test the current changes? > > > > salu2 > > > > > >>> wildcard matcher such as **.xml when used in lm actions like {1} are not > >>> rewritten > >>> ---------------------------------------------------------------------------------- > >>> > >>> Key: FOR-893 > >>> URL: http://issues.apache.org/jira/browse/FOR-893 > >>> Project: Forrest > >>> Issue Type: Bug > >>> Components: Locationmap, Dispatcher (aka views) > >>> Reporter: Thorsten Scherler > >>> Attachments: lm.log.xml > >>> > >>> > >>> In the thread http://marc.theaimsgroup.com/?t=114682704400003&r=1&w=2 I > >>> found out the following. > >>> I did a debug session with the RecursiveDirectoryTraversalAction and I > >>> figured out that the {1} in the lm is not probably resolved (it is > >>> always ""). > >>> <match pattern="resolve.structurer.**"> > >>> ... > >>> <act type="RecursiveDirectoryTraversalAction"> > >>> <parameter value="{1}" name="request"/> > >>> It seems to happen in all lm actions, I debugged the resourceTypeAction > >>> and the same problem can be seen. > >>> I attached the result of > >>> svn log . -v --xml >~/src/apache/forrest/trunk/lm.log.xml > >>> > > > > -- thorsten "Together we stand, divided we fall!" Hey you (Pink Floyd)