2011-08-06 35 views
3

我正在嘗試在Struts2中使用正則表達式和通配符操作映射在操作類中填充名爲'member.id'的參數。動作映射如下:Struts2與ognl表達式作爲字段名稱的通配符操作映射

<action name = "validationEmailHTML/{sac:[^/]*}/{member.id:[0-9]*}" class = "controller.signUp.ValidationEmailContentController"> 
    <interceptor-ref name="securityStack"/> 
    <result name="success">/signup/validationemail.jsp</result> 
    <result name="dbconnectionerror">/error/500.jsp</result> 
    <result name="unknownerror">/error/500.jsp</result> 
</action> 

第一個參數'sac'被正確填充,但'member.id'被忽略。我是否在這裏丟失了某些東西,或者是因爲當正則表達式用作模式匹配器時,指定字段名的ognl表達式不是一個選項?

回答

0

在struts2中使用正則表達式模式匹配器時,似乎不可能爲參數名稱使用OGNL表達式。唯一可能的方法是在動作類中使用簡單的值成員,並編寫代碼以在類方法內設置複雜對象的屬性值。

相關問題