[jboss-user] [JBoss Microcontainer] - "Duplicate" deployment exception logging detracts from JBoss AS usability
Lincoln Baxter III
do-not-reply at jboss.com
Thu Jun 3 13:00:41 EDT 2010
Lincoln Baxter III [http://community.jboss.org/people/lincolnthree] created the discussion
""Duplicate" deployment exception logging detracts from JBoss AS usability"
To view the discussion, visit: http://community.jboss.org/message/546092#546092
--------------------------------------------------------------
When using JBoss AS (6 M{X} in this case) - deployment errors can be critical for debugging botched configurations in web-applications. In fact, looking through the stack trace the only way to find out what's wrong, and why your app isn't deploying.
That's fine. The problem comes when the exception message is duplicated or even hidden by numerous exceptions that pile up in the log, effectively turning the next minute or so into a duck hunt, weeding through exceptions until you find the one line that you're really looking for.
I think JBoss AS/MC should be more selective when displaying exceptions.
For example: http://pastebin.com/NjjXLuiF http://pastebin.com/NjjXLuiF - In this case, I don't even want to see an exception. I've simply got a Servlet that can't be resolved to a class, and all really I care about is:
`
DEPLOYMENTS IN ERROR: Deployment "vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/" is in error due to the following reason(s): java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 1e05df6d `
It would be even nicer if I were told that I had a bad Servlet definition in web.xml, but instead, I get all of this... which isn't really helpful to an end-user. (Granted, in this case all of the exceptions actually contain the same root cause, but in some cases that doesn't happen - I certainly don't want duplicate exceptions.)
I'd like to open a JIRA for this. It's relatively low-hanging fruit that could help smoothe the developer experience.
`11:56:14,884 INFO org.jboss.web.tomcat.service.deployers.TomcatDeployment org.jboss.web.tomcat.service.deployers.TomcatDeployment undeploy, ctxPath=/pretty-blog
11:56:17,425 ERROR org.jboss.kernel.plugins.dependency.AbstractKernelController org.jboss.kernel.plugins.dependency.AbstractKernelController Error installing to PreReal: name=vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/ state=PostClassLoader mode=Manual requiredState=PreReal: org.jboss.deployers.spi.DeploymentException: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 5b20a97e
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.deployApplicationClass(ResteasyScannerDeployer.java:112)
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.internalDeploy(ResteasyScannerDeployer.java:57)
at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55)
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1660)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1378)
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1319)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:378)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2029)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1050)
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1289)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1213)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1107)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:918)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:633)
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:898)
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:677)
at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:409)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
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:637)
Caused by: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 5b20a97e
at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:498)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.deployApplicationClass(ResteasyScannerDeployer.java:108)
... 28 more
11:56:17,430 WARN org.jboss.system.server.profileservice.hotdeploy.HDScanner org.jboss.system.server.profileservice.hotdeploy.HDScanner Failed to process changes: org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
*** DEPLOYMENTS IN ERROR: Name -> Error
vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/ -> org.jboss.deployers.spi.DeploymentException: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 5b20a97e
DEPLOYMENTS IN ERROR:
Deployment "vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/" is in error due to the following reason(s): java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 5b20a97e
at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1198)
at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1144)
at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:848)
at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.checkComplete(MainDeployerAdapter.java:128)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:416)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
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:637)
11:56:18,504 SEVERE javax.enterprise.resource.webcontainer.jsf.config javax.enterprise.resource.webcontainer.jsf.config Unable to access url jndi:/localhost/pretty-blog/WEB-INF/faces-config.xml. Monitoring for this resource will no longer occur.
11:56:44,856 ERROR org.jboss.kernel.plugins.dependency.AbstractKernelController org.jboss.kernel.plugins.dependency.AbstractKernelController Error installing to PreReal: name=vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/ state=PostClassLoader mode=Manual requiredState=PreReal: org.jboss.deployers.spi.DeploymentException: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 1e05df6d
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.deployApplicationClass(ResteasyScannerDeployer.java:112)
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.internalDeploy(ResteasyScannerDeployer.java:57)
at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55)
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1660)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1378)
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1319)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:378)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2029)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1050)
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1289)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1213)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1107)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:918)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:633)
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:898)
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:677)
at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:409)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
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:637)
Caused by: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 1e05df6d
at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:498)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer.deployApplicationClass(ResteasyScannerDeployer.java:108)
... 28 more
11:56:44,861 WARN org.jboss.system.server.profileservice.hotdeploy.HDScanner org.jboss.system.server.profileservice.hotdeploy.HDScanner Failed to process changes: org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
*** DEPLOYMENTS IN ERROR: Name -> Error
vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/ -> org.jboss.deployers.spi.DeploymentException: java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 1e05df6d
DEPLOYMENTS IN ERROR:
Deployment "vfszip:/Users/lbaxter/dev/jboss-6/server/default/deploy/pretty-blog.war/" is in error due to the following reason(s): java.lang.ClassNotFoundException: com.sun.FooServlet from BaseClassLoader at 1e05df6d
at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1198)
at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1144)
at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:848)
at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.checkComplete(MainDeployerAdapter.java:128)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:416)
at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
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:637)`
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/546092#546092]
Start a new discussion in JBoss Microcontainer at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2114]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20100603/e6fc7b49/attachment-0001.html
More information about the jboss-user
mailing list