द्वारा फ़ील्ड मान सेट नहीं किया जा सका मुझे अपने सीम कोड में कोई समस्या है और मुझे यह पता लगाना प्रतीत नहीं होता कि मैं क्या कर रहा हूं। यह में मेरे सिर कर रहा है :) यहाँ स्टैक ट्रेस का एक अंश है:सीम समस्या: प्रतिबिंब
Caused by: java.lang.IllegalArgumentException: Can not set java.lang.Long field com.oobjects.sso.manager.home.PresenceHome.customerId to java.lang.String
मैं अपने URL मुझे अपने सेम में से एक में पारित कर दिया पर एक पैरामीटर सेट प्राप्त करने के लिए कोशिश कर रहा हूँ। ऐसा करने के लिए, मुझे मिल गया है के बाद मेरे pages.xml में स्थापित:
<page view-id="/customer/presences.xhtml">
<begin-conversation flush-mode="MANUAL" join="true" />
<param name="customerId" value="#{presenceHome.customerId}" />
<raise-event type="PresenceHome.init" />
<navigation>
<rule if-outcome="persisted">
<end-conversation />
<redirect view-id="/customer/presences.xhtml" />
</rule>
</navigation>
</page>
मेरे सेम इस तरह शुरू होता है:
@Name("presenceHome")
@Scope(ScopeType.CONVERSATION)
public class PresenceHome extends EntityHome<Presence> implements Serializable {
@In
private CustomerDao customerDao;
@In(required = false)
private Long presenceId;
@In(required = false)
private Long customerId;
private Customer customer;
// Getters, setters and other methods follow. They return the correct types defined above
}
अंत में लिंक मैं उपयोग करने के लिए एक के बाद एक पेज से जोड़ने के लिए अगला इस तरह दिखता है:
<s:link styleClass="#{selected == 'presences' ? 'selected' : ''}"
view="/customer/presences.xhtml" title="Presences" propagation="none">
<f:param name="customerId" value="#{customerId}" />
Presences
</s:link>
यह सब ठीक काम करने लगता है। जब मैं अपने पृष्ठ में उपरोक्त लिंक पर होवर करता हूं, तो मुझे "? ग्राहक आईडी = 123" जैसे कुछ में समाप्त होने वाला यूआरएल मिलता है। तो पैरामीटर पारित किया जा रहा है और यह ऐसा कुछ है जिसे आसानी से लंबे प्रकार में परिवर्तित किया जा सकता है। लेकिन किसी कारण से, यह नहीं है। मैंने अन्य परियोजनाओं में इससे पहले इसी तरह की चीजें की हैं और फिर यह काम किया है। मैं अभी नहीं देख सकता कि यह अब क्या काम नहीं कर रहा है।
यदि मैं अपने पृष्ठ की घोषणा से तत्व को हटा देता हूं, तो मैं पृष्ठ को ठीक से प्राप्त करता हूं।
तो, क्या किसी के पास कोई विचार है?