Issue Details (XML | Word | Printable)

Key: NANO-72
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Aslak Hellesoy
Reporter: Kouhei Mori
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
NanoContainer

make Dispatcher configurable from nanocontainer.groovy

Created: 28/Apr/04 06:04 AM   Updated: 06/Mar/05 11:33 AM
Component/s: nanowar
Affects Version/s: None
Fix Version/s: 1.0-beta-1

Time Tracking:
Not Specified

File Attachments: 1. Text File configurable_dispatcher.patch (9 kB)



 Description  « Hide
I made a patch to retrieve Dispatcher instance from application level PicoContainer (if not found, fall back to default ChainingDispatcher).

Here is a sample configuration for using FreeMarker as view:

[[nanocontainer.groovy]]
if (assemblyScope instanceof javax.servlet.ServletContext) {
pico = new org.picocontainer.defaults.DefaultPicoContainer(parent)
pico.registerComponentInstance(new org.nanocontainer.nanoweb.ChainingDispatcher(".ftl"))
return pico
} else if (assemblyScope instanceof javax.servlet.http.HttpSession) {
return new org.picocontainer.defaults.DefaultPicoContainer(parent)
} else if (assemblyScope instanceof javax.servlet.ServletRequest) {
return new org.picocontainer.defaults.DefaultPicoContainer(parent)
}

[[web.xml]]
<servlet>
<servlet-name>FreeMarker</servlet-name>
<servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>
<init-param>
<param-name>TemplatePath</param-name>
<param-value>/</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>FreeMarker</servlet-name>
<url-pattern>*.ftl</url-pattern>
</servlet-mapping>



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Aslak Hellesoy added a comment - 19/Jun/04 09:09 PM
Applied. Thanks!