1

タペストリーの使い方を学んでいる最中ですが、次のエラーが何度も出てきます

Exception: source is null for getProperty(null, "agent")    
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2203)

これは私のhtmlページのコードです

<tr>
          <td valign="center" align="right" height="30"><span class="label1"> <span key="agentDeletionSalesParentActivityType" />&nbsp;:&nbsp;</span></td>
          <td valign="center" align="left" height="30"><select jwcid="agentDeletionSalesParentActivityType@ActivityTypePropertySelection" regions="ognl:{activity.agent.region}" emptyOption="true" disabled="ognl:disabled" value="ognl:parentActivityType" /></td>
        </tr>
          <tr>
            <td valign="center" align="right" height="30"><span class="label1"> <span key="agentDeletionSalesChildActivityType" />&nbsp;:&nbsp;</span></td>
            <td valign="center" align="left" height="30"><select jwcid="agentDeletionSalesChildActivityType" regions="ognl:{activity.agent.region}" emptyOption="true" disabled="ognl:disabled" value="ognl:childActivityType" parent="component:agentDeletionSalesParentActivityType" /></td>
          </tr>

これは私のJavaコードです

@Persist
public abstract ActivityType getParentActivityType();
public abstract void setParentActivityType(ActivityType parent);

@Persist
public abstract ActivityType getChildActivityType();
public abstract void setChildActivityType(ActivityType child);

@Component(id="agentDeletionSalesChildActivityType", type="ActivityTypePropertySelection")
public abstract ActivityTypePropertySelection getChildActivityPropertySelection();

さらにコードが必要な場合は、喜んで掲載します (ページにコードを積み込まないように小さくしてあります)。

4

2 に答える 2

2

activityこれは、次のオブジェクトが null であることを示しているように見えます。

regions="ognl:{activity.agent.region}"
于 2012-10-10T11:31:20.570 に答える
0

これを解決できたかどうかはわかりませんが、私は問題に直面していました。

あなたの設定と私の設定の違いは、ネストされたオブジェクト参照です

regions="ognl:{activity.agent.region}"

あなたの例外が述べているので:

Exception: source is null for getProperty(null, "agent")    

私の経験に基づくと、activity@Stephen Cが言うように、これは実際にnullであることを意味します。

私が受け取っていた例外は次のとおりです。

Exception: source is null for getProperty(null, "question")    

これが私の構成です。うまくいけば、あなたはいくつかの洞察を輝かせることができるかもしれません.

SetSecurityQuestions.page

<component id="securityQuestion1Dropdown" type="PropertySelection">
    <binding name="model" value="securityQuestion1Model"/>
    <binding name="displayName" value="message:security_question_1"/>
    <binding name="value" value="securityQuestion1.question"/> <!-- the offending line -->
</component>

SetSecurityQuestions.html

<div class="formline">
    <span class="formtext">
         <span jwcid="@company:FieldLabelWithColon" 
               field="component:securityQuestion1Dropdown" 
               title="Security Question 1" 
               key="security_question1">Security Question 1</span>
        <span class="mandatory">*</span>
    </span>
    <select jwcid="securityQuestion1Dropdown" tabindex="1"/>
</div>

SetSecurityQuestions.java

@Persist("session")
@InitialValue("new com.org.net.SecurityQuestion()") // the solution
public abstract SecurityQuestion getSecurityQuestion1();
public abstract void setSecurityQuestion1(SecurityQuestion securityQuestion1);

それが役立つことを願っています。

于 2014-06-02T10:56:53.837 に答える