Hi Leshek,
this is a log trace saying that the FirstStepsApplication class does
not have a public contructor with a Context parameter.
In this case, the default constructor is called followed by a call to
the "setContext" method.
I've added this contructor and updated both source and pages.
However, it shows me that I've missed to update the parent's context
of the application with the component's context:
// Attach the sample application.
component.getDefaultHost().attach(
new FirstStepsApplication(component.getContext()));
It avoids the application to benefit of some component's services.
Thanks again for your report.
best regards,
Thierry Boileau
On Tue, Feb 26, 2008 at 7:15 PM, Leshek <[EMAIL PROTECTED]> wrote:
> What am I doing wrong?
>
> I am trying to get the First Steps sample to work. I am working from within
> IBM's RAD 7.0 environment, but that should be okay right....
> Working with Restlet 1.1 and
> http://www.restlet.org/documentation/1.1/firstSteps. I am trying to get it
> to work in Application server container.
>
>
> I am getting:
>
> [2/25/08 16:11:30:890 PST] 00000022 WebApp A SRVE0181I:
> [RestTestEAR#RestTestWar.war] [/RestTestWar] [Servlet.LOG]: RestletServlet:
> [Noelios Restlet Engine] - The ServerServlet couldn't invoke the constructor
> of the target class. Please check this class has a constructor with a single
> parameter of type Context. The empty constructor and the context setter will
> be used instead.: java.lang.NoSuchMethodException:
> com.ljf.restletTest.FirstStepsApplication.<init>(org.restlet.Context)
> at java.lang.Class.throwNoSuchMethodException(Class.java:275)
> at java.lang.Class.getConstructor(Class.java:315)
> at com.noelios.restlet.ext.servlet.ServerServlet.createApplication
> (ServerServlet.java:166)
> at com.noelios.restlet.ext.servlet.ServerServlet.getApplication
> (ServerServlet.java:313)
> at com.noelios.restlet.ext.servlet.ServerServlet.init
> (ServerServlet.java:418)
> at javax.servlet.GenericServlet.init(GenericServlet.java:256)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:185)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:316)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:341)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:463)
> at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129)
> at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
> at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
> at com.ibm.ws.wswebcontainer.WebContainer.handleRequest
> (WebContainer.java:1433)
> at com.ibm.ws.webcontainer.channel.WCChannelLink.ready
> (WCChannelLink.java:93)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination
> (HttpInboundLink.java:465)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation
> (HttpInboundLink.java:394)
> at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready
> (HttpInboundLink.java:274)
> at
>
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminato
> rs(NewConnectionInitialReadCallback.java:214)
> at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete
> (NewConnectionInitialReadCallback.java:113)
> at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted
> (AioReadCompletionListener.java:152)
> at com.ibm.io.async.AbstractAsyncFuture.invokeCallback
> (AbstractAsyncFuture.java:213)
> at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions
> (AbstractAsyncFuture.java:195)
> at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
> at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
> at com.ibm.io.async.ResultHandler.runEventProcessingLoop
> (ResultHandler.java:741)
> at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
>
> [2/25/08 16:11:30:937 PST] 00000022 ServiceLogger I
> com.ibm.ws.ffdc.IncidentStreamImpl initialize FFDC0009I: FFDC opened incident
> stream file C:\RAD7\runtimes\base_v61\profiles\AppSrv01
> \logs\ffdc\server1_35fa35fa_08.02.25_16.11.30_0.txt
> [2/25/08 16:11:30:984 PST] 00000022 ServiceLogger I
> com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed
> incident stream file C:\RAD7\runtimes\base_v61\profiles\AppSrv01
> \logs\ffdc\server1_35fa35fa_08.02.25_16.11.30_0.txt
> [2/25/08 16:11:31:015 PST] 00000022 ServletWrappe E SRVE0100E: Did not
> realize init() exception thrown by servlet RestletServlet:
> java.lang.NullPointerException
> at java.util.concurrent.CopyOnWriteArrayList.<init>
> (CopyOnWriteArrayList.java:84)
> at org.restlet.Connector.<init>(Connector.java:69)
> at org.restlet.Client.<init>(Client.java:49)
> at com.noelios.restlet.ext.servlet.ServletWarClient.<init>
> (ServletWarClient.java:52)
> at com.noelios.restlet.ext.servlet.ServerServlet.createApplication
> (ServerServlet.java:215)
> at com.noelios.restlet.ext.servlet.ServerServlet.getApplication
> (ServerServlet.java:313)
> at com.noelios.restlet.ext.servlet.ServerServlet.init
> (ServerServlet.java:418)
> at javax.servlet.GenericServlet.init(GenericServlet.java:256)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:185)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:316)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:341)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:463)
> at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129)
> at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
> at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
> at com.ibm.ws.wswebcontainer.WebContainer.handleRequest
> (WebContainer.java:1433)
> at com.ibm.ws.webcontainer.channel.WCChannelLink.ready
> (WCChannelLink.java:93)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination
> (HttpInboundLink.java:465)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation
> (HttpInboundLink.java:394)
> at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready
> (HttpInboundLink.java:274)
> at
>
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminato
> rs(NewConnectionInitialReadCallback.java:214)
> at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete
> (NewConnectionInitialReadCallback.java:113)
> at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted
> (AioReadCompletionListener.java:152)
> at com.ibm.io.async.AbstractAsyncFuture.invokeCallback
> (AbstractAsyncFuture.java:213)
> at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions
> (AbstractAsyncFuture.java:195)
> at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
> at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
> at com.ibm.io.async.ResultHandler.runEventProcessingLoop
> (ResultHandler.java:741)
> at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
>
> [2/25/08 16:11:31:015 PST] 00000022 ServletWrappe E Deregister the mbean
> because of uncaught init() exception thrown by servlet RestletServlet:
> javax.servlet.ServletException: SRVE0207E: Uncaught initialization exception
> thrown by servlet
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:237)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:316)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:341)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:463)
> at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129)
> at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
> at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
> at com.ibm.ws.wswebcontainer.WebContainer.handleRequest
> (WebContainer.java:1433)
> at com.ibm.ws.webcontainer.channel.WCChannelLink.ready
> (WCChannelLink.java:93)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination
> (HttpInboundLink.java:465)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation
> (HttpInboundLink.java:394)
> at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready
> (HttpInboundLink.java:274)
> at
>
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminato
> rs(NewConnectionInitialReadCallback.java:214)
> at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete
> (NewConnectionInitialReadCallback.java:113)
> at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted
> (AioReadCompletionListener.java:152)
> at com.ibm.io.async.AbstractAsyncFuture.invokeCallback
> (AbstractAsyncFuture.java:213)
> at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions
> (AbstractAsyncFuture.java:195)
> at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
> at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
> at com.ibm.io.async.ResultHandler.runEventProcessingLoop
> (ResultHandler.java:741)
> at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
> ---- Begin backtrace for Nested Throwables
> java.lang.NullPointerException
> at java.util.concurrent.CopyOnWriteArrayList.<init>
> (CopyOnWriteArrayList.java:84)
> at org.restlet.Connector.<init>(Connector.java:69)
> at org.restlet.Client.<init>(Client.java:49)
> at com.noelios.restlet.ext.servlet.ServletWarClient.<init>
> (ServletWarClient.java:52)
> at com.noelios.restlet.ext.servlet.ServerServlet.createApplication
> (ServerServlet.java:215)
> at com.noelios.restlet.ext.servlet.ServerServlet.getApplication
> (ServerServlet.java:313)
> at com.noelios.restlet.ext.servlet.ServerServlet.init
> (ServerServlet.java:418)
> at javax.servlet.GenericServlet.init(GenericServlet.java:256)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:185)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:316)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:341)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:463)
> at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129)
> at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
> at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
> at com.ibm.ws.wswebcontainer.WebContainer.handleRequest
> (WebContainer.java:1433)
> at com.ibm.ws.webcontainer.channel.WCChannelLink.ready
> (WCChannelLink.java:93)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination
> (HttpInboundLink.java:465)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation
> (HttpInboundLink.java:394)
> at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready
> (HttpInboundLink.java:274)
> at
>
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminato
> rs(NewConnectionInitialReadCallback.java:214)
> at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete
> (NewConnectionInitialReadCallback.java:113)
> at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted
> (AioReadCompletionListener.java:152)
> at com.ibm.io.async.AbstractAsyncFuture.invokeCallback
> (AbstractAsyncFuture.java:213)
> at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions
> (AbstractAsyncFuture.java:195)
> at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
> at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
> at com.ibm.io.async.ResultHandler.runEventProcessingLoop
> (ResultHandler.java:741)
> at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
> ,
> [2/25/08 16:11:31:031 PST] 00000022 ServiceLogger I
> com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC opened incident
> stream
> file C:\RAD7\runtimes\base_v61\profiles\AppSrv01
> \logs\ffdc\server1_35fa35fa_08.02.25_16.11.31_0.txt
> [2/25/08 16:11:31:046 PST] 00000022 ServiceLogger I
> com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed
> incident stream file C:\RAD7\runtimes\base_v61\profiles\AppSrv01
> \logs\ffdc\server1_35fa35fa_08.02.25_16.11.31_0.txt
> [2/25/08 16:11:31:046 PST] 00000022 WebApp E [Servlet Error]-
> [RestletServlet]: java.lang.NullPointerException
> at java.util.concurrent.CopyOnWriteArrayList.<init>
> (CopyOnWriteArrayList.java:84)
> at org.restlet.Connector.<init>(Connector.java:69)
> at org.restlet.Client.<init>(Client.java:49)
> at com.noelios.restlet.ext.servlet.ServletWarClient.<init>
> (ServletWarClient.java:52)
> at com.noelios.restlet.ext.servlet.ServerServlet.createApplication
> (ServerServlet.java:215)
> at com.noelios.restlet.ext.servlet.ServerServlet.getApplication
> (ServerServlet.java:313)
> at com.noelios.restlet.ext.servlet.ServerServlet.init
> (ServerServlet.java:418)
> at javax.servlet.GenericServlet.init(GenericServlet.java:256)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:185)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init
> (ServletWrapper.java:316)
> at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:341)
> at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest
> (ServletWrapper.java:463)
> at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129)
> at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
> at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
> at com.ibm.ws.wswebcontainer.WebContainer.handleRequest
> (WebContainer.java:1433)
> at com.ibm.ws.webcontainer.channel.WCChannelLink.ready
> (WCChannelLink.java:93)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination
> (HttpInboundLink.java:465)
> at
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation
> (HttpInboundLink.java:394)
> at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready
> (HttpInboundLink.java:274)
> at
>
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminato
> rs(NewConnectionInitialReadCallback.java:214)
> at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete
> (NewConnectionInitialReadCallback.java:113)
> at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted
> (AioReadCompletionListener.java:152)
> at com.ibm.io.async.AbstractAsyncFuture.invokeCallback
> (AbstractAsyncFuture.java:213)
> at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions
> (AbstractAsyncFuture.java:195)
> at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
> at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
> at com.ibm.io.async.ResultHandler.runEventProcessingLoop
> (ResultHandler.java:741)
> at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
>
>
>
>