2

速度テンプレート テーマに次のコードがあります。

#set($currLayout = $layoutLocalService.getFriendlyURLLayout($group_id, true, $currFriendlyUrl))

スローする

com.liferay.portal.NoSuchLayoutException
    at com.liferay.portal.service.impl.LayoutLocalServiceImpl.getFriendlyURLLayout(LayoutLocalServiceImpl.java:959)

一致するレイアウトが存在しない場合。

速度テンプレートでこの例外をキャッチするにはどうすればよいですか?

4

1 に答える 1

3

私の知る限り、速度テンプレート内で例外をキャッチすることはできません。一般に、このような状況に対処するには、次の 2 つの方法があります。

  • サーブレットなど、テンプレートを使用するアプリケーションで例外を処理する
  • 例外をスローしないようにします。代わりに、メソッドが常に有効な (デフォルト) 値を返すようにするかnull、それが不可能な場合

速度マニュアルでは、可能な限り 2 番目のオプションを使用することを推奨しています。

于 2013-04-23T09:19:19.357 に答える