0

liferay-sdk-6.0.6でフック プラグインを作成し、servlet.service.events.preイベント ハンドラを定義します。

<service>
    <service-type>servlet.service.events.pre</service-type>
    <service-impl>com.ggd543.liferay.ServicePreAction</service-impl>
</service>

liferay-6.0.6-ce にバンドルされた jboss 5.1.0 GA にデプロイすると、次のエラーが発生しました。

Caused by: java.lang.ClassNotFoundException: application.startup.events
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at com.liferay.portal.deploy.hot.HookHotDeployListener.doInvokeDeploy(HookHotDeployListener.java:569)
    at com.liferay.portal.deploy.hot.HookHotDeployListener.invokeDeploy(HookHotDeployListener.java:218)
    ... 68 more

私の中に何か問題がありますliferay-hook.xmlか?

4

1 に答える 1

3

はい。Liferay 6 以降では、liferay-hook.xml でそのようなイベントを定義する必要はありません。プロパティ フックを作成し、プロパティ ファイルでイベントを定義する必要があります。以下のようなもの

liferay-hook.xml

<hook>
    <portal-properties>portal.properties</portal-properties>

</hook>

portal.properties

servlet.service.events.pre=com.ggd543.liferay.ServicePreAction
于 2012-07-04T09:26:51.283 に答える