私はこの構造を持っています:
WebContent
resources
components
top.xhtml
company
about_us.xhtml
index.xhtml
top.xhtmlindex.xthmlとで使用されるコンポーネントですabout_us.xhtml。
top.xhtml
<ul>
<li><a href="index.xhtml">Home</a></li>
<li><a href="company/about_us.xhtml">About us</a></li>
...
</ul>
したがって、私の問題は、現在のページがindex.xhtmlコンポーネントである場合は正しく URL を生成しますが、現在のページがabout_us.xhtmlである場合は間違った URL を生成することです。間違った URL も生成するため、相対パスは使用できません。コンポーネントがページの現在のパスに基づいているためだと思い*.xhtmlます。
私が見つけた唯一の解決策は次のとおりです。
<ul>
<li><a href="${pageContext.request.contextPath}/webname/index.xhtml">Home</a></li>
<li><a href="${pageContext.request.contextPath}/webname/about_us.xhtml">About us</a></li>
...
</ul>
しかし、私はまったく「エレガント」ではないと思います。何か案は?