`
cleaneyes
  • 浏览: 348762 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Portal在WAS下UndeclaredThrowableException异常

阅读更多

Liferay Portal安装在WAS下后,启动时出现下面的异常:

[10-11-18 15:25:05:171 CST] 0000000a SystemOut     O 15:25:05,171 ERROR [MainServlet:162] com.liferay.portal.kernel.events.ActionException: com.liferay.portal.verify.VerifyException: java.lang.reflect.UndeclaredThrowableException
com.liferay.portal.kernel.events.ActionException: com.liferay.portal.verify.VerifyException: java.lang.reflect.UndeclaredThrowableException
	at com.liferay.portal.events.StartupAction.run(StartupAction.java:81)
	at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:154)
	at javax.servlet.GenericServlet.init(GenericServlet.java:241)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:325)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:165)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:1588)
	at com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor.createServletWrapper(WebExtensionProcessor.java:98)
	at com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:936)
	at com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:857)
	at com.ibm.ws.webcontainer.webapp.WebApp.initializeTargetMappings(WebApp.java:538)
	at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:360)
	at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:292)
	at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:99)
	at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:167)
	at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:722)
	at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:607)
	at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
	at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
	at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1162)
	at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1313)
	at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:611)
	at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:938)
	at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:740)
	at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2092)
	at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:437)
	at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:122)
	at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:380)
	at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:105)
	at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:928)
	at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349)
	at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)
Caused by: com.liferay.portal.verify.VerifyException: java.lang.reflect.UndeclaredThrowableException
	at com.liferay.portal.verify.VerifyJournal.verify(VerifyJournal.java:62)
	at com.liferay.portal.verify.VerifyProcess.verify(VerifyProcess.java:53)
	at com.liferay.portal.verify.VerifyProcessSuite.verify(VerifyProcessSuite.java:52)
	at com.liferay.portal.events.StartupAction.doRun(StartupAction.java:274)
	at com.liferay.portal.events.StartupAction.run(StartupAction.java:75)
	... 30 more
Caused by: java.lang.reflect.UndeclaredThrowableException
	at $Proxy259.getArticles(Unknown Source)
	at com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil.getArticles(JournalArticleLocalServiceUtil.java:562)
	at com.liferay.portal.verify.VerifyJournal.verifyJournal(VerifyJournal.java:215)
	at com.liferay.portal.verify.VerifyJournal.verify(VerifyJournal.java:59)

 

在Portal应用在Tomcat下启动完全正常,查不到异常的原因。因为动态代理没有把底层的异常抛出来,只好跟踪代码,加入调试信息,发现是一个Version的类有冲突,Liferay本身有一个Version类,我们自己又加了一个Version类,包路径不一样,后加的Version类包路径为根,class文件放到了classes的下面。

删除这个Version类之后,就正常了。或者把class文件移动jar包中也可以。

 

 

分享到:
评论

相关推荐

    StreamUnthrower,lambda表达式中的异常.zip

    具体来说,`unthrow`方法接收一个`Runnable`对象,这个对象通常代表Lambda表达式,然后在运行时捕获任何可能抛出的检查异常,并包装成`UndeclaredThrowableException`(一个未检查异常)再次抛出。这样,即使Lambda...

    Java动态代理的异常处理问题

    在使用Java动态代理时出现了一个很棘手的问题,实现类里抛出了一个自定义异常,但外面捕获不到。  虽然使用 printStack 可以输出调试信息,但通过 getMessage 获取不到提示,因为项目需求是捕捉到同一种自定义异常...

    JAVA程序员常见的面试题

    这意味着 `Hashtable` 在多线程环境中可以直接使用,而 `HashMap` 如果要在多线程环境下使用,需要额外的同步措施。 - **null key 和 null value** 的处理: `HashMap` 允许一个 null key 和任意数量的 null values。...

    JAVA 程序员面试必备的32个要点

    这些异常不需要捕获,但在程序设计时应尽可能避免触发这些异常,以提高程序的健壮性。 以上是对JAVA程序员面试中常见的32个要点的详细解析,希望对大家有所帮助。在准备面试的过程中,除了掌握这些基本概念外,还...

    java 面试题 总结

    当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。 17、abstract class和interface有什么区别? 声明方法...

    超级有影响力霸气的Java面试题大全文档

    当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。 20、abstract class和interface有什么区别? ...

    ServletJSP数据库的笔试及面试题.docx

    在 Java 语言中,Runtime Exception 是指在程序运行时抛出的异常。常见的 Runtime Exception 有 ArithmeticException、ArrayStoreException、BufferOverflowException、BufferUnderflowException、...

    OTP:Java一次动态密码、付款码原理

    import java.lang.reflect.UndeclaredThrowableException; import java.math.BigInteger; import java.security.GeneralSecurityException; import java.util.Date; public class TOTP { // 共享密钥 private ...

Global site tag (gtag.js) - Google Analytics