Akash
Akash

Reputation: 840

Getting value of key from Web Content Display Portlet

I got a requirement. I have added two text fields Value and Key from structure in Web Content Display portlet. Web Content with two fields 'Key' and 'Value'

right now in the portlet i am getting value from hard code like below.

BasicModel model = (BasicModel)requestContext.getFlowScope().get("BasicModel");
        if(model == null){
            model = new BasicModel();
        }
        model.setEmployeeId("AB1223344S");
        model.setHireDate("01-Jan-2000");
        model.setNiNumber("AB123456S");
        model.setDateOfBirth("12-Dec-1980");
        model.setBasicForm(new BasicDetailsForm());
    }

but what i want is to get the value of each attribute from web content. Like, If i have given lfr.intel.empid as key and ABSD1822D as value in the added web content structure field like this. new added information for key and value

and we can fetch the value of key like this.

model.setEmployeeId(lfr.intel.empid);

Upvotes: 0

Views: 848

Answers (2)

Harsha Kasturi
Harsha Kasturi

Reputation: 243

Try this, assuming that you could get the JournalArticle object, I've done it using the resourcePrimKey

long resourcePrimKey = 12345; //hard coded the resourcePrimKey
JournalArticle article = JournalArticleLocalServiceUtil.getLatestArticle(resourcePrimKey);
com.liferay.portal.kernel.xml.Document document = SAXReaderUtil.read(article.getContentByLocale("en_US"));

Node keyNode = document.selectSingleNode("/root/dynamic-element[@name='Key']/dynamic-content");
String key = keyNode.getStringValue();

Node valueNode = document.selectSingleNode("/root/dynamic-element[@name='Value']/dynamic-content");
String value = valueNode .getStringValue();

Upvotes: 0

Himanshu Bhandari
Himanshu Bhandari

Reputation: 1879

You can write a custom function for this which passes the key to that function, now that function will use the JournalArticleLocalServiceUtil API to get respective value from the DB.

Now you need to find How to fetch values from JournalArticleLocalServiceUtil, which you can google or this link can help you.

Thanks.

Upvotes: 0

Related Questions