| Web bundle does not start when url-pattern=* [message #872035] |
Tue, 15 May 2012 06:52  |
Thorsten Schlathölter Messages: 179 Registered: February 2012 Location: Düsseldorf |
Senior Member |
|
|
I would like to share my experience with an incorrect url-pattern inside the web.xml of a web bundle. Playing around with virgo and web bundles I set the following url pattern by mistake.
<servlet-mapping>
<servlet-name>testws</servlet-name>
<url-pattern>*</url-pattern>
</servlet-mapping>
The result is that the bundle never reaches the started stage. After 300 seconds there is a warning, that the bundle did not start in the expected time period. That's all.
In the logging you can see that the bundle is installed and started:
[2012-05-15 11:35:25.036] TCP Connection(6)-127.0.0.1 <DE0000I> Installing par 'TestWS.par' version '1.0.0'.
[2012-05-15 11:35:25.036] TCP Connection(6)-127.0.0.1 <DE0000I> Installing bundle 'TestWS.par-1-TestWS' version '2.5.0'.
[2012-05-15 11:35:25.473] fs-watcher <HD0001I> Hot deployer processing 'INITIAL' event for file 'org.eclipse.virgo.apps.admin-3.0.3.RELEASE.plan'.
[2012-05-15 11:35:25.661] TCP Connection(6)-127.0.0.1 <DE0001I> Installed bundle 'TestWS.par-1-TestWS' version '2.5.0'.
[2012-05-15 11:35:25.661] TCP Connection(6)-127.0.0.1 <DE0001I> Installed bundle 'TestWS.par-1-synthetic.context' version '1.0.0'.
[2012-05-15 11:35:25.661] TCP Connection(6)-127.0.0.1 <DE0001I> Installed par 'TestWS.par' version '1.0.0'.
[2012-05-15 11:35:25.708] TCP Connection(6)-127.0.0.1 <DE0004I> Starting par 'TestWS.par' version '1.0.0'.
[2012-05-15 11:35:25.957] fs-watcher <DE0000I> Installing plan 'org.eclipse.virgo.apps.admin.plan' version '3.0.3'.
[2012-05-15 11:35:25.957] TCP Connection(6)-127.0.0.1 <DE0004I> Starting bundle 'TestWS.par-1-TestWS' version '2.5.0'.
[2012-05-15 11:35:25.973] TCP Connection(6)-127.0.0.1 <DE0004I> Starting bundle 'TestWS.par-1-synthetic.context' version '1.0.0'.
[2012-05-15 11:35:25.989] start-signalling-1 <WE0000I> Starting web bundle 'TestWS.par-1-TestWS' version '2.5.0' with context path '/testws'.
[2012-05-15 11:35:25.989] start-signalling-2 <DE0005I> Started bundle 'TestWS.par-1-synthetic.context' version '1.0.0'.
After 300 seconds:
[2012-05-15 11:44:34.423] TCP Connection(4)-127.0.0.1 <DE0502E> Start of par 'TestWS.par' version '1.0.0' has taken longer than the configured timeout of '300' seconds.
It's really hard to spot that the following lines never show up:
[2012-05-15 11:37:15.582] start-signalling-1 <WE0001I> Started web bundle 'TestWS.par-1-TestWS' version '2.5.0' with context path '/testws'.
[2012-05-15 11:37:15.582] start-signalling-1 <DE0005I> Started bundle 'TestWS.par-1-TestWS' version '2.5.0'.
[2012-05-15 11:37:15.582] start-signalling-1 <DE0005I> Started par 'TestWS.par' version '1.0.0'.
I am not sure whether this can be considered a bug. At least it is very hard to find out that the bundle was not started and if you finally get to know that, it's again hard to find out the reason.
Regards,
Thorsten
|
|
|
|
|
|
| Re: Web bundle does not start when url-pattern=* [message #872573 is a reply to message #872543] |
Wed, 16 May 2012 07:31   |
Thorsten Schlathölter Messages: 179 Registered: February 2012 Location: Düsseldorf |
Senior Member |
|
|
Hi Violeta,
find attached a simple bundle that can be used to reproduce the issue. I am running on Windows, Eclipse 3.7.2, Virgo 3.0.3 and I have installed the required tools 2 days ago. So everything should be up to date.
Checking the example I realized that the test bundle does not go off silently. There is a dump which is created. Must have overseen that the last time.
I have simply added the test.web bundle to the virgo server configuration. If I start the server the following test.web related output is generated:
[2012-05-16 13:14:17.018] TCP Connection(4)-127.0.0.1 <DE0000I> Installing bundle 'test.web' version '1.0.0'.
[2012-05-16 13:14:17.033] TCP Connection(4)-127.0.0.1 <DE0001I> Installed bundle 'test.web' version '1.0.0'.
[2012-05-16 13:14:17.080] TCP Connection(4)-127.0.0.1 <DE0004I> Starting bundle 'test.web' version '1.0.0'.
[2012-05-16 13:14:17.080] start-signalling-2 <WE0000I> Starting web bundle 'test.web' version '1.0.0' with context path '/testweb'.
[2012-05-16 13:14:17.143] fs-watcher <HD0001I> Hot deployer processing 'INITIAL' event for file 'org.eclipse.virgo.apps.admin-3.0.3.RELEASE.plan'.
[2012-05-16 13:14:17.252] fs-watcher <DE0000I> Installing plan 'org.eclipse.virgo.apps.admin.plan' version '3.0.3'.
[2012-05-16 13:14:19.205] fs-watcher <DE0000I> Installing bundle 'org.eclipse.virgo.apps.admin.core' version '3.0.3.RELEASE'.
[2012-05-16 13:14:19.518] start-signalling-2 <ME0003I> Dump 'serviceability\dump\2012-05-16-13-14-393' generated
And 5 minutes later:
[2012-05-16 13:19:17.085] TCP Connection(4)-127.0.0.1 <DE0502E> Start of bundle 'test.web' version '1.0.0' has taken longer than the configured timeout of '300' seconds.
Regards,
Thorsten
Attachment: test.web.zip
(Size: 2.90KB, Downloaded 33 times)
[Updated on: Wed, 16 May 2012 07:32] Report message to a moderator
|
|
|
|
| Re: Web bundle does not start when url-pattern=* [message #885308 is a reply to message #872792] |
Tue, 12 June 2012 15:31  |
Violeta Georgieva Messages: 172 Registered: October 2010 |
Senior Member |
|
|
Hi,
This is really strange.
I tried your example with VTS 3.0.3, but standalone i.e. I started Virgo from the terminal and not from the tooling.
I copied your example to pickup folder and I received the following:
console log
[2012-06-12 22:19:43.461] fs-watcher <DE0000I> Installing bundle 'test.web' version '1.0.0'.
[2012-06-12 22:19:43.468] fs-watcher <DE0001I> Installed bundle 'test.web' version '1.0.0'.
[2012-06-12 22:19:43.473] fs-watcher <DE0004I> Starting bundle 'test.web' version '1.0.0'.
[2012-06-12 22:19:43.475] start-signalling-4 <WE0000I> Starting web bundle 'test.web' version '1.0.0' with context path '/testweb'.
[2012-06-12 22:19:44.701] start-signalling-4 <ME0003I> Dump 'serviceability/dump/2012-06-12-22-19-526' generated
and then in <Virgo-Home>/serviceability/logs/virgo-server/log.log
[2012-06-12 22:19:43.475] INFO start-signalling-4 org.eclipse.virgo.medic.eventlog.default WE0000I Starting web bundle 'test.web' version '1.0.0' with context path '/testweb'.
[2012-06-12 22:19:43.525] ERROR start-signalling-4 org.apache.catalina.core.ContainerBase ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testweb]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.eclipse.gemini.web.tomcat.internal.TomcatServletContainer.startWebApplication(TomcatServletContainer.java:122)
at org.eclipse.gemini.web.internal.StandardWebApplication.start(StandardWebApplication.java:91)
at org.eclipse.virgo.web.core.internal.WebBundleLifecycleListener.onStarted(WebBundleLifecycleListener.java:122)
at org.eclipse.virgo.kernel.install.artifact.internal.StandardArtifactStateMonitor.onStarted(StandardArtifactStateMonitor.java:247)
at org.eclipse.virgo.kernel.install.artifact.internal.AbstractInstallArtifact.asyncStartSucceeded(AbstractInstallArtifact.java:294)
at org.eclipse.virgo.kernel.install.artifact.internal.AbstractInstallArtifact.access$0(AbstractInstallArtifact.java:291)
at org.eclipse.virgo.kernel.install.artifact.internal.AbstractInstallArtifact$StateMonitorSignal.signalSuccessfulCompletion(AbstractInstallArtifact.java:229)
at org.eclipse.virgo.kernel.core.internal.BundleStartTracker$1.run(BundleStartTracker.java:143)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> * in servlet mapping
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3208)
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3183)
at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1302)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1357)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:855)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:345)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 14 common frames omitted
[2012-06-12 22:19:44.702] INFO start-signalling-4 org.eclipse.virgo.medic.eventlog.default ME0003I Dump 'serviceability/dump/2012-06-12-22-19-526' generated
Regards
Violeta
|
|
|
Powered by
FUDForum. Page generated in 0.06993 seconds