2011-06-19 9 views
1

私はJSF 2アプリケーションでこのようなナビゲーション・ルールを持っている:私はこのルールを満たすそのディレクトリmyhome2myHome2.xhtmlh:commandLinkを入れると、ページmyHome1.xhtmlが表示されます私のJSFページの写真はどこですか?

<navigation-rule> 
    <from-view-id>*</from-view-id> 
    <navigation-case> 
     <from-action>#{myBean.goToMyHome1}</from-action> 
     <from-outcome>myHome1.xhtml</from-outcome> 
     <to-view-id>/myhome1/myHome1.xhtml</to-view-id> 
     <redirect/> 
    </navigation-case> 
</navigation-rule> 

が、上の画像がありませんページ。彼らはどこに行くの?アプリケーションの背後に は、この設定とSpringsecurity 3:

<sec:intercept-url pattern="/myhome1/**" access="hasAnyRole('ROLE1','ROLE2')" /> 

<sec:intercept-url pattern="/myhome2/**" access="hasRole('ROLE2')" /> 

答えて

0

このあなたの写真のURLは、現在のURLパスに対して相対的であるかのように見えます。例えば。

<img src="images/picture.png" /> 

あなたは

http://example.com/contextname/myHome1.xhtml

でページを開くと、イメージのURLが有効に

http://example.com/contextname/images/picture.png

を指すようになります3210

しかし、あなたは

http://example.com/contextname/myhome/myHome1.xhtml

してページを開いたときに画像のURLが効果的にあなたが修正する必要が

http://example.com/contextname/myhome/images/picture.png

を指すようになりますそれに応じて。いくつかの方法があります。ドメイン相対パス

<img src="/contextname/images/picture.png" /> 

を使用するか、コンテキスト名を付加動的

<img src="#{request.contextPath}/images/picture.png" /> 

それとも、それを行いますどの<h:graphicImage>を使用し、自動的に

<h:graphicImage value="/images/picture.png" /> 
関連する問題