2014-07-09 6 views

उत्तर

25

यह स्लिंग संस्करण पर निर्भर करता है:

स्लिंग> = 2.3.0 (सीक्यू 5.6 के बाद से)

ModifiableValueMap करने के लिए अपने संसाधन अनुकूलन, अपने put विधि का उपयोग करें और संसाधन समाधानकर्ता प्रतिबद्ध:

ModifiableValueMap map = resource.adaptTo(ModifiableValueMap.class); 
map.put("property", "value"); 
resource.getResourceResolver().commit(); 

स्लिंग < 2.3.0 (सीक्यू 5.5 और पुराने)

, PersistableValueMap करने के लिए अपने संसाधन अनुकूलन अपने put और save तरीकों का उपयोग:

PersistableValueMap map = resource.adaptTo(PersistableValueMap.class); 
map.put("property", "value"); 
map.save(); 

JCR एपीआई

तुम भी Node लिए संसाधन अनुकूल और संपत्ति को बदलने के लिए JCR एपीआई का उपयोग कर सकते हैं। हालांकि, एक अमूर्त परत से चिपकना अच्छा विचार है और इस मामले में हम किसी भी तरह स्लिंग द्वारा प्रदान किए गए Resource अमूर्तता को तोड़ते हैं।

Node node = resource.adaptTo(Node.class); 
node.setProperty("property", "value"); 
node.getSession().save(); 
1

यह प्रकाशित करने में काम नहीं कर रहा है। लेकिन यदि उपयोगकर्ता लॉग इन as admin यह काम करेगा।

ModifiableValueMap map = resource.adaptTo(ModifiableValueMap.class); 
map.put("property", "value"); 
resource.getResourceResolver().commit(); 
0

कई डेवलपर्स Node API का उपयोग करने के शौकीन नहीं हैं। आप क्रमशः संपत्ति को पढ़ने और अपडेट करने के लिए ValueMap और ModifiableValueMap API का भी उपयोग कर सकते हैं।

पढ़ें मूल्य ValueMap के माध्यम से

ValueMap valueMap = resource.getValueMap(); 
valueMap.get("yourProperty", String.class); 

लिखें/ModifiableValueMap के माध्यम से

ModifiableValueMap modifiableValueMap = resource.adaptTo(ModifiableValueMap.class); 
modifiableValueMap.put("NewProperty", "Your Value"); //write 
modifiableValueMap.put("OldProperty", "Updated Value"); // Modify 
संपत्ति को संशोधित
संबंधित मुद्दे