You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by li xuefeng <xu...@gmail.com> on 2007/10/05 06:06:42 UTC
a problem about tapestry5 on the feature of tapestry.app-package
the problem is that,how can i loading class from different class path
from different package like follow in web.xml:
<param-name>tapestry.app-package</param-name>
<param-value>std.example.myapp, cus.example.myapp</param-value>
we support custom solution base on product solution.
the web application's directory like follow:
WEB-ROOT
|
|----WEB-INF
| |
| |-----std.example.myapp //product components
| | |
| | |----pages
| | |----services
| | |----data
|-----std module1 //standard module (modue1_*.html)
|-----std module2 //standard module (modue2_*.html)
| | |
| |-----cus.example.myapp //custom modules components
| | |
| | |----pages
| | |----services
| | |----data
| | |
|-----cus module1 //custom module (modue1_*.html)
|-----cus module2 //custom module (modue2_*.html)
the benefits:
1、if we only nedd to upgrade std module1, we only need to update directory
std module1 //standard module (modue1_*.html)
and some java in pages,services,data
2、I suggest the sambol "tapestry.app-package" not define in web.xml,
the problem is how can i add a new cus module(cus module3),the web
application don't need to stop and restart.
Re: a problem about tapestry5 on the feature of tapestry.app-package
Posted by Howard Lewis Ship <hl...@gmail.com>.
I think this is more of a users list question.
It sounds like you want to have a customization system, where you can drop
in a replacement for some builtin functionality?
Tapestry abounds with higher-order ways of viewing the application; what I'm
saying it to institute some abstraction from class names. Don't create
custom modules that overlap built-in classes exactly, create custom modules
that user their own package, and use some configuration to figure out which
particular class to use in a given situation.
To do this seamlessly would require some minor changes to the framework ...
ideally, you should be able, inside a template, to reference "MyComponent"
and determine, on the fly, whether that's MyComponent from a standard module
or from a custom module. Those hooks do not exist at this time, but could
be introduced in your appliction, but cutting-and-pasting some code from T5.
On 10/4/07, li xuefeng <xu...@gmail.com> wrote:
>
> the problem is that,how can i loading class from different class path
> from different package like follow in web.xml:
> <param-name>tapestry.app-package</param-name>
> <param-value>std.example.myapp, cus.example.myapp</param-value>
>
> we support custom solution base on product solution.
>
> the web application's directory like follow:
> WEB-ROOT
> |
> |----WEB-INF
> | |
> | |-----std.example.myapp //product components
> | | |
> | | |----pages
> | | |----services
> | | |----data
> |-----std module1 //standard module (modue1_*.html)
> |-----std module2 //standard module (modue2_*.html)
> | | |
> | |-----cus.example.myapp //custom modules
> components
> | | |
> | | |----pages
> | | |----services
> | | |----data
> | | |
> |-----cus module1 //custom module (modue1_*.html)
> |-----cus module2 //custom module (modue2_*.html)
>
> the benefits:
> 1、if we only nedd to upgrade std module1, we only need to update
> directory
> std module1 //standard module (modue1_*.html)
> and some java in pages,services,data
> 2、I suggest the sambol "tapestry.app-package" not define in web.xml,
> the problem is how can i add a new cus module(cus module3),the
> web
> application don't need to stop and restart.
>
--
Howard M. Lewis Ship
Partner and Senior Architect at Feature50
Creator Apache Tapestry and Apache HiveMind