おそらく、カスタム FriendlyURL マッパー クラスを追加して、その「-」プレフィックスを無効にします。これを試しましたか?
実際の例を示すのに役立つことができて本当に申し訳ありません。私もその機能に興味があるので、試してみましたが、少なくともliferay 6.1.0ではこれができないのではないかと心配しています. わかりやすい URL には「/-/」が必要なようです。私が見つけて提案した解決策は実際にはハックであり、いくつかの制限があればうまくいくと信じていますが、それを実装できたとしても、すべての liferay バージョンでうまくいくとは限りません。
リクエストに応じて、ここに詳細な手順を投稿していますが、これはうまくいかなかったと言わざるを得ません (カスタム マッパーは、FriendlyUrl の作成中にエラーをスローします)。
- DefaultFriendlyURLMapper を使用して、少なくとも 1 つのルートでフレンドリー マッピングを既に行っているはずです。URL に「/-/」文字が表示されている場合は、それが機能していることがわかります。この URL を覚えておいてください。後でテストするために必要になります。
DefaultFriendlyURLMapper を拡張するカスタム MAPper クラスを作成する
public class DemoCustomFriendlyUrlMapper extends DefaultFriendlyURLMapper {
@Override
public boolean isCheckMappingWithPrefix() {
return false;
}
クラス修飾名を取得してください (Eclipse では、クラス名の上にカーソルを置いて F2 キーを押します)。
liferay-portlet.xml に移動して置き換えます
<friendly-url-mapper-class>com.liferay.portal.kernel.portlet.DefaultFriendlyURLMapper</friendly-url-mapper-class>
と
<friendly-url-mapper-class>com.liferay.samples.DemoCustomFriendlyUrlMapper</friendly-url-mapper-class>
フレンドリー ルーティングされる URL に移動して、何が起こるかを確認します。