You need to sign in to do that
Don't have an account?
How to display Xml value in a vf page
Hi all,
I'm having a requirement of whenever I click a image that is displayed by performing an action,the values in xml file (here is facebook label)should display in a vf page..here is my code
public class XmlStreamReaderDemo2 {
public string url{set;get;}
public PageReference ImageUrl() {
String str = '<socialnetwork><Image><Fieldlabel>FaceBook Url</Fieldlabel></socialnetwork>';
// Id id; System.debug('urlllllllllllllll'+url);
PageReference p = new PageReference('?id='+str);
// id=apexpages.currentpage().getparameters().get('image1.field');
return p;
}
public String image1 { get; set; }
public string ImageUrl{get;set;}
public class Network {
String name;
String field;
}
Network[] parsesocialnetwork(XmlStreamReader reader) {
Network[] socialnetwork= new Network[0];
while(reader.hasNext()) {
if (reader.getEventType() == XmlTag.START_ELEMENT) {
if ('Network' == reader.getLocalName()) {
Network image1= parseImages(reader);
socialnetwork.add(image1);
}
}
reader.next();
}
return socialnetwork;
}
Network parseImages(XmlStreamReader reader) {
Network image1= new Network();
while(reader.hasNext()) {
if (reader.getEventType() == XmlTag.START_ELEMENT) {
if (reader.getLocalName() == 'Image') {
reader.next();
if (reader.getEventType() == XmlTag.characters) {
image1.name= reader.getText();
}
}
if (reader.getLocalName() == 'Fieldlabel') {
reader.next();
if (reader.getEventType() == XmlTag.characters) {
image1.field= reader.getText();
}
}
}
reader.next();
}
return image1;
}
public void action() {
XmlStreamReaderDemo2 demo = new XmlStreamReaderDemo2();
String str = '<socialnetwork><Image>https://encrypted-tbn2.google.com/images?q=tbn:ANd9GcR6N8xoTIVjKPjpdpvLZjzwrDEAIodzZTpD1ybS-XHZskxE1F0e</Image><Fieldlabel>FaceBook Url</Fieldlabel></socialnetwork>';
XmlStreamReader reader = new XmlStreamReader(str);
Network socialnetwork = demo.parseImages(reader);
System.debug('---------'+socialnetwork);
System.debug('---------'+ImageUrl); // System.debug(socialnetwork.size());
ImageUrl=string.valueof(socialnetwork.name);
// url = string.valueOf(socialnetwork.field);
}
}
and my vf page is
<apex:page controller="XmlStreamReaderDemo2">
<Apex:form >
<apex:pageBlock >
<apex:commandButton value="Refer" action="{!Action}" reRender="ImageDisplay"/>
<apex:pageBlockSection >
<apex:outputPanel id="ImageDisplay">
<apex:image value="{!ImageUrl}" >
<apex:actionSupport event="onclick" action="{!ImageUrl}"/>
</apex:image>
<!-- <apex:inputtext value="{!url}" size="40"/> -->
</apex:outputPanel>
</apex:pageBlockSection>
</apex:pageBlock>
</Apex:form>
</apex:page>
Any help would be sincerely appreciated
Thanks in advance,