struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andreas Toom <andreas.t...@comitnet.com>
Subject Re: jsp location when using modules
Date Fri, 15 Apr 2005 05:28:20 GMT
Hello again,

The main reason I wanted to use WEB-INF at first was to protect jsp/xml 
but this would lead to module contents i two places, static content 
(images etc) in /modulename and pages in WEB-INF/pages/modulename.

After trying some things I have decided, for now, to place each module 
with all it contents in /modulename and use a filter to protect jsp, 
xml:s etc from direct access. It feels good to place all resources for a 
module in one place...

What do you guys think of this approach?

/Andreas



Hubert Rabago wrote:
> I haven't done this before, but try this:
> 
> 1. Use the forwardPattern attribute of <controller> and give it the
> same value you're giving pagePattern now.
> 
> 2. Set up a custom ForwardAction.  The existing ForwardAction sets
> contextRelative which skips the use of forwardPattern.  For your
> custom version, copy the code in the existing ForwardAction except
> don't set contextRelative to true.
> 
> 3. Change your mappings to:
> <action path="/test" type="your.ForwardAction" parameter="error.jsp"/>
> It should resolve to /WEB-INF/pages/test/error.jsp where
> forwardPattern="/WEB-INF/pages/$M$P" and the module name is "test".
> 
> Looking at TilesRequestProcessor.processTilesDefinition(), it doesn't
> look like it prefixes the uri with module names, nor does it use
> controller.forwardPattern, so if I read it right, it will use the uri
> you set in your tile definitions.
> 
> hth,
> Hubert
> 
> On 4/14/05, Andreas Toom <andreas.toom@comitnet.com> wrote:
> 
>>Hello, We are currently refactoring our Web applications into one
>>application using Struts modules so that we can share common resources
>>more easily between the different modules.
>>
>>Now to the problem, we are currently placing all our jsps in
>>/WEB-INF/pages/ but when introducing modules I get 404 for this action:
>>
>><action path="/test" forward="/WEB-INF/pages/test/error.jsp" />
>>
>>Tomcat searches /test/WEB-INF/pages/test/error.jsp
>>
>>I've read that this behaviour can be overwritten with:
>><controller
>>processorClass="org.apache.struts.tiles.TilesRequestProcessor"
>>pagePattern="/WEB-INF/pages/$M$P" />
>>
>>But no result.
>>
>>How can this be solved? do I have to place content for each module in
>>/modulename/...
>>
>>and what does this do to content that we wish to share, for example tile
>>  definitions that are now in /WEB-INF/tiles/ ?
>>
>>/Andreas
>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 
> 



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message