1

専用コントローラーを持つ 2 つのポートレットを含む WAR ファイルがあります。Liferay を起動したり、2 つのポートレットを含むページを呼び出したりしたときに、すべてのコントローラー (ハンドラー メソッド) が見つかるように構成するにはどうすればよいですか? portlet.xml では、両方のポートレットに
<portlet-class>org.springframework.web.portlet.DispatcherPortlet</portlet-class>.

spring-mvc-portlet.xml で使用します<context:component-scan base-package="com.foo.bar" />

両方のコントローラーには、@RenderMapping で注釈が付けられたデフォルトのハンドラー メソッドが必要です。コントローラーは両方とも、型レベルで @RequestMapping("VIEW") で注釈が付けられています。

現在起こっていることは、コントローラー A (portlet.xml で最初に定義されたもの) からのデフォルトのハンドラー メソッドのみが呼び出されることです。

4

2 に答える 2

1

まず、各ポートレット (コントローラー) を個別のパッケージに入れることをお勧めします。

ポートレットごとに、 portlet.xmlの「portlet-name」にちなんで名付けられた spring xml ファイルが必要<portlet-name>my-first-portlet</portlet-name>です。

于 2014-01-02T10:00:26.703 に答える