Re: Wicket with ServletContainerInitializer

2012-04-04 Thread Christoph Leiter

Hi,

I'll reply to my own message. :) Martin Grigorov figured out that Jetty 
doesn't install the DefaultServlet in this configuration. Without a 
servlet the WicketFilter cannot work.


There's now new working sample code at
https://issues.apache.org/jira/browse/WICKET-4350


Christoph


Christoph Leiter (2012-04-03 12:55):

Hi,

I'm trying to use ServletContainerInitializer to start my wicket
application. There's already work done to support this in WICKET-4350.
It's not working for me, however. The filter is registered in jetty but
I get a 404 response for every request.

What I've done so far (starting from a quickstart):
1) Add dependency:
org.eclipse.jetty.orbit:org.objectweb.asm:3.1.0.v200803061910
2) Delete web.xml
3) Create file
META-INF/services/javax.servlet.ServletContainerInitializer with the
content com.mycompany.Initializer
4) Add AnnotationConfiguration to the jetty configuration:
bb.setConfigurations(new Configuration[] { new AnnotationConfiguration()
});
5) Add Initializer:

| public class Initializer implements ServletContainerInitializer {
| @Override
| public void onStartup(SetClass? c, ServletContext servletContext)
throws ServletException {
| WicketApplication app = new WicketApplication();
| app.setConfigurationType(RuntimeConfigurationType.DEVELOPMENT);
| WicketFilter wicketFilter = new WicketFilter(app);
| wicketFilter.setFilterPath();
| Dynamic filter = servletContext.addFilter(wicket, wicketFilter);
| filter.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class),
true, /*);
| }
| }

That's the relevant part of the jetty debug log for the filter
registration:

| DEBUG - Container - Container
org.eclipse.jetty.servlet.ServletHandler@78334ba0 + wicket as filter
| DEBUG - Container - Container
org.eclipse.jetty.servlet.ServletHandler@78334ba0 + [/*]/[]==31=wicket
as filterMapping
| DEBUG - ServletHandler - filterNameMap={wicket=wicket}
| DEBUG - ServletHandler - pathFilters=[[/*]/[]==31=wicket]
| DEBUG - ServletHandler - servletFilterMap={}
| DEBUG - ServletHandler - servletPathMap=null
| DEBUG - ServletHandler - servletNameMap={}
| DEBUG - AbstractLifeCycle - starting wicket
| DEBUG - WebAppClassLoader - loaded class org.apache.wicket.Initializer
from sun.misc.Launcher$AppClassLoader@7981c4eb
| INFO - Application - [wicket] init: Wicket core library initializer

The log for a request to /:

| DEBUG - Server - REQUEST / on
BlockingHttpConnection@3c7352d1,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-5,l=18,c=0},r=1

| DEBUG - ContextHandler - scope null||/ @
o.e.j.w.WebAppContext{/,null},src/main/webapp
| DEBUG - ContextHandler - context=||/ @
o.e.j.w.WebAppContext{/,null},src/main/webapp
| DEBUG - session -
sessionManager=org.eclipse.jetty.server.session.HashSessionManager@efc0830
| DEBUG - session - session=null
| DEBUG - ServletHandler - servlet ||/ - null
| DEBUG - ServletHandler - chain=null
| DEBUG - ServletHandler - Not Found /
| DEBUG - Server - RESPONSE / 404

Environment is Wicket 1.5.5, jetty 8.1.2. I tried with Tomcat 7 as well
but no luck either.

Any help is appreciated


Christoph

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Wicket with ServletContainerInitializer

2012-04-03 Thread Christoph Leiter

Hi,

I'm trying to use ServletContainerInitializer to start my wicket 
application. There's already work done to support this in WICKET-4350. 
It's not working for me, however. The filter is registered in jetty but 
I get a 404 response for every request.


What I've done so far (starting from a quickstart):
1) Add dependency: 
org.eclipse.jetty.orbit:org.objectweb.asm:3.1.0.v200803061910

2) Delete web.xml
3) Create file 
META-INF/services/javax.servlet.ServletContainerInitializer with the 
content com.mycompany.Initializer

4) Add AnnotationConfiguration to the jetty configuration:
bb.setConfigurations(new Configuration[] { new AnnotationConfiguration() });
5) Add Initializer:

| public class Initializer implements ServletContainerInitializer {
|@Override
| public void onStartup(SetClass? c, ServletContext 
servletContext) throws ServletException {

| WicketApplication app = new WicketApplication();
| app.setConfigurationType(RuntimeConfigurationType.DEVELOPMENT);
| WicketFilter wicketFilter = new WicketFilter(app);
| wicketFilter.setFilterPath();
| Dynamic filter = servletContext.addFilter(wicket, wicketFilter);
| 
filter.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), 
true, /*);

| }
| }

That's the relevant part of the jetty debug log for the filter registration:

| DEBUG - Container  - Container 
org.eclipse.jetty.servlet.ServletHandler@78334ba0 + wicket as filter
| DEBUG - Container  - Container 
org.eclipse.jetty.servlet.ServletHandler@78334ba0 + [/*]/[]==31=wicket 
as filterMapping

| DEBUG - ServletHandler - filterNameMap={wicket=wicket}
| DEBUG - ServletHandler - pathFilters=[[/*]/[]==31=wicket]
| DEBUG - ServletHandler - servletFilterMap={}
| DEBUG - ServletHandler - servletPathMap=null
| DEBUG - ServletHandler - servletNameMap={}
| DEBUG - AbstractLifeCycle  - starting wicket
| DEBUG - WebAppClassLoader  - loaded class 
org.apache.wicket.Initializer from sun.misc.Launcher$AppClassLoader@7981c4eb
| INFO  - Application- [wicket] init: Wicket core 
library initializer


The log for a request to /:

| DEBUG - Server - REQUEST / on 
BlockingHttpConnection@3c7352d1,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-5,l=18,c=0},r=1
| DEBUG - ContextHandler - scope null||/ @ 
o.e.j.w.WebAppContext{/,null},src/main/webapp
| DEBUG - ContextHandler - context=||/ @ 
o.e.j.w.WebAppContext{/,null},src/main/webapp
| DEBUG - session- 
sessionManager=org.eclipse.jetty.server.session.HashSessionManager@efc0830

| DEBUG - session- session=null
| DEBUG - ServletHandler - servlet ||/ - null
| DEBUG - ServletHandler - chain=null
| DEBUG - ServletHandler - Not Found /
| DEBUG - Server - RESPONSE /  404

Environment is Wicket 1.5.5, jetty 8.1.2. I tried with Tomcat 7 as well 
but no luck either.


Any help is appreciated


Christoph

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org