4

ユーザーのリストがあります(userIdを指すリンクのあるdataTable /user/view/{userId})。このuserIdリンクをクリックすると、ブラウザは期待どおり「表示」ページにリダイレクトされます。

http://localhost:8080/user/view/1最初のユーザーと2 番目のユーザーなどの URL パターンを受け入れるページがありますが、このページが読み込まhttp://localhost:8080/user/view/2れた後の値の使用方法がわかりません。userId

PrettyFaces URLRewriteFilterでこれを達成するにはどうすればよいですか? #{bean.userId}ページにアクセスしたときに PrettyFaces が値を挿入したら、バッキング Bean から (1、2 など)の値を使用してデータをロードするにはどうすればよいですか。誰でも説明できますか?

<url-mapping id="view">
<pattern value="/user/view/#{bean.userId}/" />
<view-id value="/userview.jsf" />
</url-mapping>

GAE で JSF2+Primefaces.3.0.M3+Prettyfaces-jsf2.3.3.2 を使用しています。

4

2 に答える 2

5

You need a page-load action, specified by the <action> element in your URL-mapping configuration. First, you will need a method in your bean, like this:

@Named("bean")
@RequestScoped
public class LoginBean {

public String loadLoggedUser() {
    if ( userId != null ) {
        this.user = user.findById(userId);
        return null;
    }
    return "failure";
}
}

Second, you will need to add the <action> to your URL-mapping:

<url-mapping id="view">
     <pattern value="/user/view/#{bean.userId}/" />
     <view-id value="/userview.jsf" />
     <action>#{bean.loadLoggedUser}</action>
</url-mapping>

Here we have defined a page-action to be executed on a bean, #{bean.loadLoggedUser}, when a URL matching our pattern is requested. For example: /user/view/2.

于 2012-01-31T10:08:07.953 に答える
0
<url-mapping id="login">
        <pattern> /user/view/1 </pattern>
        <view-id> /legacy/user/login.jsp </view-id> <!-- Non JSF View Id -->
    </url-mapping>
    <url-mapping id="register">
        <pattern>/user/view/1 </pattern>
        <view-id>/faces/user/register.jsf</view-id> <!-- JSF View Id -->
    </url-mapping>
<url-mapping id="login1">
        <pattern> /user/view/2 </pattern>
        <view-id> /legacy/user/login2.jsp </view-id> <!-- Non JSF View Id -->
    </url-mapping>
    <url-mapping id="register2">
        <pattern>/user/view/2 </pattern>
        <view-id>/faces/user/register2.jsf</view-id> <!-- JSF View Id -->
    </url-mapping>

http://ocpsoft.com/prettyfaces/を参照

于 2012-01-31T09:12:30.467 に答える