3

我有一个包含 ApplicationLifecycleListener 的 bean。像这样:

package vanzylvi.test;

import weblogic.application.ApplicationLifecycleEvent;

import weblogic.application.ApplicationLifecycleListener;

public class TestApplicationListener  extends ApplicationLifecycleListener {

     public void preStart(ApplicationLifecycleEvent evt) {
         System.out.println("preStart GO GO GO");
     }
}

在我的weblogic-application.xml

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
<listener>
     <listener-class>vanzylvi.test.TestApplicationListener</listener-class>
</listener>
</weblogic-application>

我永远无法启动 preStart 位,我们将不胜感激。

4

2 回答 2

2

可能会稍后为您提供答案,但除非在 WebLogic 12 中,否则还可以设置侦听器 URI以避免将类文件添加到普通的 ear 文件中:

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
<listener>
   <listener-class>vanzylvi.test.TestApplicationListener</listener-class>
   <listener-uri>startup.jar</listener-uri>
</listener>
</weblogic-application>
于 2013-12-05T14:46:06.550 回答
1

我很确定问题是 java.lang.ClassNotFoundException 因为我过去遇到过同样的问题。为了修复它,编译 TestApplicationListener 类并将它放在你的 EarContent/APP-INF/classes 下。你的 EarContent/APP-INF/classes 应该包含 vanzylvi/test/TestApplicationListener.class。

您的 weblogic-application.xml 和 TestApplicationListener 是正确的。

我希望这可以帮助你。

于 2012-08-20T13:57:45.070 回答