Tomcat 8 won't start with a project resource

I’m still very much a newbie, so please have patience with me. I’ve been following along in The Book of Vaadin and I have Tomcat v8.0.18 installed correctly. It starts up correctly, too, but only when started up on its own.

When I attempt to run (or debug) a project—even the default one that is created with the Vaadin Plug-in for Eclipse when I have it create a new project, I get a mass of errors as it’s trying to start Tomcat:

Feb 24, 2015 10:16:32 AM org.apache.tomcat.util.digester.SetPropertiesRule begin

WARNING: [SetPropertiesRule]
{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:time-it' did not find a matching property.

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Server version:        Apache Tomcat/8.0.18

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Server built:          Jan 23 2015 11:56:07 UTC

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Server number:         8.0.18.0

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: OS Name:               Mac OS X

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: OS Version:            10.9.5

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Architecture:          x86_64

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Java Home:             /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home/jre

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: JVM Version:           1.8.0_31-b13

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: JVM Vendor:            Oracle Corporation

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: CATALINA_BASE:         /Users/Marketing/Dropbox/eclipse/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: CATALINA_HOME:         /usr/local/apache-tomcat-8.0.18

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:51144

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -Dcatalina.base=/Users/Marketing/Dropbox/eclipse/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -Dcatalina.home=/usr/local/apache-tomcat-8.0.18

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -Dwtp.deploy=/Users/Marketing/Dropbox/eclipse/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -Djava.endorsed.dirs=/usr/local/apache-tomcat-8.0.18/endorsed

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.VersionLoggerListener log

INFO: Command line argument: -Dfile.encoding=UTF-8

Feb 24, 2015 10:16:32 AM org.apache.catalina.core.AprLifecycleListener lifecycleEvent

INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /Users/Marketing/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.

Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol init

INFO: Initializing ProtocolHandler ["http-nio-8080"]


Feb 24, 2015 10:16:32 AM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

INFO: Using a shared selector for servlet write/read

Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol init

INFO: Initializing ProtocolHandler ["ajp-nio-8009"]


Feb 24, 2015 10:16:32 AM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

INFO: Using a shared selector for servlet write/read

Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.Catalina load

INFO: Initialization processed in 688 ms

Feb 24, 2015 10:16:32 AM org.apache.catalina.core.StandardService startInternal

INFO: Starting service Catalina

Feb 24, 2015 10:16:32 AM org.apache.catalina.core.StandardEngine startInternal

INFO: Starting Servlet Engine: Apache Tomcat/8.0.18

Feb 24, 2015 10:16:32 AM org.apache.catalina.core.ContainerBase startInternal

SEVERE: A child container failed during start

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
.StandardHost[localhost]
.StandardContext
[/time-it]]

    at java.util.concurrent.FutureTask.report(FutureTask.java:122)

    at java.util.concurrent.FutureTask.get(FutureTask.java:192)

    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:917)

    at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:868)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)

    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1399)

    at java.util.concurrent.FutureTask.run(FutureTask.java:266)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

    at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
.StandardHost[localhost]
.StandardContext
[/time-it]]

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

    ... 6 more

Caused by: java.lang.IllegalArgumentException: The servlets named [com.example.time_it.Time_itUI$Servlet]
 and [timeit.ui.TimeItUI$Servlet]
 are both mapped to the url-pattern 
[/*] which is not permitted

    at org.apache.tomcat.util.descriptor.web.WebXml.addServletMapping(WebXml.java:308)

    at org.apache.catalina.startup.ContextConfig.processAnnotationWebServlet(ContextConfig.java:2343)

    at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2025)

    at org.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1919)

    at org.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1914)

    at org.apache.catalina.startup.ContextConfig.processAnnotationsWebResource(ContextConfig.java:1914)

    at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1139)

    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:771)

    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:305)

    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    ... 6 more




Feb 24, 2015 10:16:32 AM org.apache.catalina.core.ContainerBase startInternal

SEVERE: A child container failed during start

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
.StandardHost[localhost]
]

    at java.util.concurrent.FutureTask.report(FutureTask.java:122)

    at java.util.concurrent.FutureTask.get(FutureTask.java:192)

    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:917)

    at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:439)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:769)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    at org.apache.catalina.startup.Catalina.start(Catalina.java:625)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:483)

    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)

    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
.StandardHost[localhost]
]

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)

    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1399)

    at java.util.concurrent.FutureTask.run(FutureTask.java:266)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

    at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.catalina.LifecycleException: A child container failed during start

    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:925)

    at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:868)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    ... 6 more




Feb 24, 2015 10:16:32 AM org.apache.catalina.startup.Catalina start

SEVERE: The required Server component failed to start so Tomcat is unable to start.

org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]
]

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

    at org.apache.catalina.startup.Catalina.start(Catalina.java:625)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:483)

    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)

    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]
]

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:769)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    ... 7 more

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]
]

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:439)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    ... 9 more

Caused by: org.apache.catalina.LifecycleException: A child container failed during start

    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:925)

    at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

    ... 11 more




Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol pause

INFO: Pausing ProtocolHandler ["http-nio-8080"]


Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol pause

INFO: Pausing ProtocolHandler ["ajp-nio-8009"]


Feb 24, 2015 10:16:32 AM org.apache.catalina.core.StandardService stopInternal

INFO: Stopping service Catalina

Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol destroy

INFO: Destroying ProtocolHandler ["http-nio-8080"]


Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol destroy

SEVERE: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]


java.lang.NullPointerException

    at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:307)

    at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:482)

    at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:795)

    at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:532)

    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:588)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:859)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.startup.Catalina.start(Catalina.java:629)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:483)

    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)

    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)




Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol destroy

INFO: Destroying ProtocolHandler ["ajp-nio-8009"]


Feb 24, 2015 10:16:32 AM org.apache.coyote.AbstractProtocol destroy

SEVERE: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]


java.lang.NullPointerException

    at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:307)

    at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:482)

    at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:795)

    at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:532)

    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:588)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:859)

    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)

    at org.apache.catalina.startup.Catalina.start(Catalina.java:629)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:483)

    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)

    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)

The only clue I have is that, when I try to run/debug a project, Eclipse adds that project to the server as a “resource”. But if I expand the tree to show the server’s resources in Eclipse’s Servers tab, then delete that resource, I can at least start the server fine. What gives?

The interesting bit is that it was working yesterday for a short while. But when these error messages started appearing, I’ve done all I can think of, such as deleting all the servers in Eclipse and then adding it back again as a new server, etc. Still nothing. Can anyone please take some time out to help me figure out what’s going on and, more importantly, to resolve it?

Aaaaand no sooner do I get it posted than I find the golden nugget of information within that mess of error messages:

Caused by: java.lang.IllegalArgumentException: The servlets named [com.example.time_it.Time_itUI$Servlet] and [timeit.ui.TimeItUI$Servlet] are both mapped to the url-pattern [/*] which is not permitted It turns out that I have
two
UIs in the project, as I was trying to follow along with the book
Vaadin 7 UI Design By Example: Beginner’s Guide
. So I just altered the URL pattern in one of the UI’s servlet mappings from /* to /test/*, and it works again. Sorry for troubling the community with something that is probably very trivial. What can I say? I’m a newb.