Hello,
I need to get raw html of confluence page in my plugin.
This code:
pagemanager.getPage(pageID).getBodyAsString();
often gives me macro's tags and I can't to normally parse it.
Thanks
Community moderators have prevented the ability to post new answers.
I am using something like
String rendered = renderer.render(page.getEntity(),conversionContext); view = HTMLUtils.stripTags(rendered);
where the renderer is a DeviceTypeAwareRenderer:
renderer = (DeviceTypeAwareRenderer)ContainerManager.getComponent("viewRenderer");
and conversionContext
final ConversionContext conversionContext = new DefaultConversionContext(page.toPageContext());
Hope it helps
Thanks Can you please give full code. I am having problem in identifying type of objects like renderer and view.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
DeviceTypeAwareRenderer renderer = (DeviceTypeAwareRenderer) ContainerManager.getComponent("viewRenderer"); final ConversionContext conversionContext = new DefaultConversionContext(page.toPageContext()); String rendered = renderer.render(page.getEntity(), conversionContext); String result = HTMLUtils.stripTags(rendered); return result;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You could use Jsoup to parse the body to a HTML doc.
Below are the required imports and code you can use to get Elements.
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
Document htmlDoc = Jsoup.parse(htmlBody);
Elements elements = htmlDoc.getAllElements();
Make sure you add the required dependencies in your pom file.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.