cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeroen Reijn <j.re...@onehippo.com>
Subject Re: Tomcat passing requests to cocoon for docroot, but not sub-directories?
Date Thu, 10 Apr 2008 09:31:32 GMT
Well then it must be your mod_jk configuration. I do not have a lot of 
experience with that, since I normally use mod_rewrite or mod_proxy.

On the cocoon side the correct way to go is without the preceding "/", so

<map:match pattern="/main/*.jhtml">
  <map:generate src="/main/pageTwo.xml"/>

Should be

<map:match pattern="main/*.jhtml">
  <map:generate src="main/pageTwo.xml"/>

So somehow tomcat or apache does not know how to handle requests with 
/main in front? You do not by accident have another context running 
inside your tomcat that has the name main?

Gr.

Jeroen

Jed wrote:
> Hi Jeroen,
> 
> Thanks for the suggestion. I did actually try that but it didn't solve it. :(
> 
> The problem is that Tomcat still appears to NOT be passing any request
> for a *.jhtml document in the docroot/main folder to cocoon.
> 
> As I said, when I ask for http://test.domain/test.jhtml cocoon
> recieves the request and processes it as seen in the sitemap.log file.
> 
> However asking for http://test.domain/main/test.jhtml never gets past
> Tomcat. It never passes it to cocoon so it never matches a matcher and
> no request is ever seen in the sitemap.log. I just get a 404 from
> Tomcat as it's trying to return an actual file called "test.jhtml" :(
> 
> - Jed
> 
> On 10/04/2008, Jeroen Reijn <j.reijn@onehippo.com> wrote:
>> Yes you are correct here. Remove the "/" from the beginning. Also use a
>> relative source:
>>
>>  Use
>>  <map:generate src="main/helloworld.xml"/>
>>
>>  instead of
>>
>>  <map:generate src="/main/helloworld.xml"/>
>>
>>  Regards,
>>
>>  Jeroen
>>
>>
>>
>>  Rainer Pruy wrote:
>>
>>> Hi Jed,
>>>
>>> you might try using <map:match pattern="main/*.jhtml"> (leaving out the
>> "/").
>>> I remember having experienced similar problem some tim ago.
>>>
>>> Regards
>>> Rainer
>>>
>>> Jed schrieb:
>>>
>>>> Hi All,
>>>>
>>>> I'm a new Cocoon user and I've come across and I'm having a really
>>>> bizarre problem at the moment which has stopped my site development in
>>>> it's tracks.
>>>>
>>>> I've got Apache/Tomcat/Cocoon set-up and have got the Tomcat and
>>>> Cocoon samples running just fine. I've set-up a virtual server with
>>>> it's own docroot and made a simple "HelloWorld" servlet and XML/XSLT
>>>> test and again, those work both fine.
>>>>
>>>> However, I've now started setting up my pipelines/matchers and a
>>>> really strange thing is happening.
>>>>
>>>> As a test, I've put "helloworld.xml" and its associated xsl file in
>>>> docroot and set-up a matcher so that and request for /*.jhtml
>>>> effectively loads and transforms that file. This works fine. However,
>>>> if I then make a subdirectory of docroot and place the same xml/xsl
>>>> there and set-up a matcher for that, absolutely nothing happens.
>>>> Instead I just get a Tomcat 404 page.
>>>>
>>>> I've been scratching my head over this for a week and what appears to
>>>> be the problem is that Tomcat is definately passing requests for
>>>> documents in docroot to cocoon but NOT for any sub-directories.
>>>>
>>>> The way I tested was as follows:
>>>>
>>>> Test 1:
>>>>
>>>> Created files:
>>>> docroot/helloworld.xml
>>>> docroot/helloworld.xsl
>>>>
>>>> Matcher:
>>>> <map:match pattern="*.jhtml">
>>>> <map:generate src="helloworld.xml"/>
>>>> <map:transform src="helloworld.xsl"/>
>>>> <map:serialize type="html"/>
>>>> </map:match>
>>>>
>>>> Request:
>>>> http://test.domain/randomfilename.jhtml
>>>>
>>>> Result:
>>>> "Hello World!"
>>>>
>>>> Test 2:
>>>>
>>>> Create files:
>>>> docroot/main/helloworld.xml
>>>> docroot/main/helloworld.xsl
>>>>
>>>> Matcher:
>>>> <map:match pattern="/main/*.jhtml">
>>>> <map:generate src="/main/helloworld.xml"/>
>>>> <map:transform src="/main/helloworld.xsl"/>
>>>> <map:serialize type="html"/>
>>>> </map:match>
>>>>
>>>> Request:
>>>> http://test.domain/main/randomfilename.jhtml
>>>>
>>>> Result:
>>>> Tomcat 404 error message
>>>>
>>>> Test 3:
>>>>
>>>> Remove files:
>>>> docroot/helloworld.xml
>>>> docroot/helloworld.xsl
>>>>
>>>> Matcher:
>>>> <map:match pattern="*.jhtml">
>>>> <map:generate src="helloworld.xml"/>
>>>> <map:transform src="helloworld.xsl"/>
>>>> <map:serialize type="html"/>
>>>> </map:match>
>>>>
>>>> Request:
>>>> http://test.domain/randomfilename.jhtml
>>>>
>>>> Result:
>>>> Coccon 404 error message as defined in <map:handle-errors>
>>>>
>>>> I have DEBUG level set in logkit and watched what was happening when I
>>>> made requests. mod_jk was intercepting the request from apache and
>>>> matching it with a worker and passing it to Tomcat. For requests for
>>>> documents in docroot, Tomcat was passing them to cocoon as the
>>>> requests and processing can be seen in the sitemap.log file.
>>>>
>>>> However, when a request is made for a file in a sub-directory of
>>>> docroot, there is zero activity in sitemap.log - the request just
>>>> never gets there!
>>>>
>>>> I am *completely* baffled. I believe I have the various components
>>>> configured correctly but as stated, Tomcat will not pass requests for
>>>> sub-dirs to Cocoon.
>>>>
>>>> Can anyone shed any light on this?
>>>>
>>>> - Jed
>>>>
>>>> Heres the pertinent extracts from the various configs:
>>>>
>>>> Apache - http.conf:
>>>>
>>>> <VirtualHost *:80>
>>>> DocumentRoot
>> /usr/local/apache/share/saab_current/htdocs/
>>>> ServerName test.domain
>>>> Options FollowSymLinks +Indexes
>>>> <Directory /usr/local/apache/share/htdocs>
>>>> Options +Indexes
>>>> </Directory>
>>>> DirectoryIndex index.jhtml index.html index.xml
>>>> JkMount /*.shtml xmlworker
>>>> JkMount /main/*.jhtml xmlworker
>>>> </VirtualHost>
>>>>
>>>> Tomcat - server.xml
>>>> <Engine name="Catalina" defaultHost="test.domain"
>>>> cachingAllowed="true" debug="9">
>>>> <Host name="test.domain" debug="9"
>> appBase="/usr/local/apache/share/htdocs"
>>>> unpackWARs="true" autoDeploy="true" xmlValidation="false"
>>>> xmlNamespaceAware="false">
>>>> <Context debug="9"
>>>> reloadable="true"
>>>> path=""
>>>> docBase="/usr/local/apache/share/htdocs"
>>>> />
>>>> </Host>
>>>> </Engine>
>>>>
>>>> Tomcat - workers.properties
>>>>
>>>> # XML worker
>>>> worker.xmlworker.port=8009
>>>> worker.xmlworker.host=localhost
>>>> worker.xmlworker.type=ajp13
>>>>
>>>> Cocoon - sitemap.xmap
>>>>
>>>> <map:match pattern="*.jhtml">
>>>> <map:generate src="pageOne.xml"/>
>>>> <map:transform src="doc2html.xsl"/>
>>>> <map:serialize type="html"/>
>>>> </map:match>
>>>>
>>>> <map:match pattern="/main/*.jhtml">
>>>> <map:generate src="/main/pageTwo.xml"/>
>>>> <map:transform src="/main/doc2html.xsl"/>
>>>> <map:serialize type="html"/>
>>>> </map:match>
>>>>
>>>> My set-up is:
>>>>
>>>> Fedora Core 6
>>>> Apache/2.2.8
>>>> mod_jk 1.2.26
>>>> Tomcat  5.5.26
>>>> Cocoon 2.1.11
>>>> Sun JDK 1.6.0_05-b13
>>>>
>>>>
>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail:
>> users-unsubscribe@cocoon.apache.org
>>>> For additional commands, e-mail: users-help@cocoon.apache.org
>>>>
>>>>
>>>
>>  --
>>  Met vriendelijke groet,
>>  Kind regards,
>>
>>  Jeroen Reijn
>>
>>  Hippo
>>
>>  Amsterdam - Hippo B.V. Oosteinde 11 1017 WT Amsterdam +31(0)20-5224466
>>  San Francisco - Hippo USA Inc. 101 H Street, suite Q Petaluma CA
>>  94952-3329 +1 (707) 773-4646
>>
>>  www.onehippo.com info@onehippo.com
>>
>>
>>
>> ---------------------------------------------------------------------
>>  To unsubscribe, e-mail:
>> users-unsubscribe@cocoon.apache.org
>>  For additional commands, e-mail: users-help@cocoon.apache.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail: users-help@cocoon.apache.org
> 

-- 
Met vriendelijke groet,
Kind regards,

Jeroen Reijn

Hippo

Amsterdam - Hippo B.V. Oosteinde 11 1017 WT Amsterdam +31(0)20-5224466
San Francisco - Hippo USA Inc. 101 H Street, suite Q Petaluma CA
94952-3329 +1 (707) 773-4646

www.onehippo.com info@onehippo.com


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message