Since Application Express can use WebServices and can integrate JSON like any other webpage. Take a look at this site http://www.trynt.com/ which has a bunch free WebServices,XML and JSON feeds which can be integrated into an APEX application.
So as I've stated before I almost always deal with static XSL files when building my XML/XSL to FOP transformations.
When I do almost always start with one of two generic XSL files as a starter. One is a Generic Report XSL and another is a Generic Name Value Pair XSL , I've cleaned them up a bit and some commenting and put them up for everybody to try out.
To use them just upload them as a Named Column Template XSL and then apply to any APEX report, the named value pair page breaks after each row because I usually use it to create pages where there is one item with lots of detail.
You will get a very generic PDF but it can used as a base for other XSL files.
These templates also show some extra XSL features, like xsl:if or xsl:choose and xsl:attribute-set. I'll be posting some more specifics on XML+XSL=FOP transforms over the next couple weeks using these two files as examples but for you people that like reverse engineering stuff these files will immediately be useful.
A working example and files for download can be found here.
http://apex.oracle.com/pls/otn/f?p=11933:139
I suggest this site for people unfamiliar with XSL and FOP
http://www.w3schools.com/xsl/default.asp
http://www.w3schools.com/xslfo/default.asp
And I personally use XMLSpy ,one of the few Windows programs I use , for working with XML and XSL files it can directly create PDF's from an XML+XSL transform.
http://www.altova.com/products/xmlspy/xml_editor.html
Just a quick post. I moved my rss feed to feedburner. I've been mulling it over for a bit and was basically waiting for Google to do it for me since Google and feedburner are same company. But now since they let you redirect the standard blogger feeds http://blogs.feedburner.com/feedburner/archives/2007/07/feedburner_integration_for_blo.php I figured that was close enough for me.
So if you feel the need point your rss readers to here http://feeds.feedburner.com/carlback
If you don't feel the need no worries 'hopefully' the redirection will work as advertised.
Edit:
Looks like there was a hiccup this morning with the rss feed redirect hopefully it is all working now, please feel free to drop a line if it isn't.
>>
Hi Carl,
I am new to APEX so my question is probably too simple but if you could describe in 2 words the major benefit of using Cocoon as opposed to just FOP.
Thanks in advance,
Vadim
>>
Well lucky for you Vadim I just happened to be playing around with my Cocoon instance today and am absolutely even more thrilled with the APEX + Cocoon combo than before. So my 2 words if I had to pick them would be XML and Pipelines!
XML for two reasons.
Once Cocoon is setup most of it's configuration is controlled by the sitemap.xmap file which is an XML file , no java libraries, no crazy .conf files, just nice clean XML. For me who has a rational hatred towards all things java this is awesome.
Also the mechanics behind the PDF printing no matter if you using BI Publisher or the Apache FOP solution or my Cocoon example is XML + XSL > FOP = PDF.
Cocoon is made to deal with XML and XSL in hundreds of ways, just using the sitemap.xmap file which gets us to the next word......
Pipelines the cornerstone of Cocoon.
http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html
Now the dirty little secret I have is that I never use the XSL that is posted from the APEX engine. I use XSL from the filesystem.
In Cocoon once you have your XML you can look into it for certain values and pipeline the XML to different transformations. This can easily give you different report formats for the same Apex Report depending on near any value in the report , page or session.
One of the things I hope to make facilitating this in the future is to allow for each report (via the APEX Builder) to have an individual FOP posting endpoint.
Finally two more points , though it goes over my two word limit it's my blog, in Cocoon you also have the ability for RTF output which you don't get from standard FOP and also the ease of setup which I find amazingly easy.
So you want your PDF printing but playing with JSP's and java libraries isn't your thing. Well there is another way to setup PDF and RTF output. The key is in the cryptic last paragrach of the APEX + PDF howto
>>
Other XSL-FO Processing Engines
If you prefer to use another XSL-FO Processing Engine, you will need to create an endpoint that provides similar functionality to the example JSP provided for the Apache FOP example above.
>>
Well I do prefer another XSL-FO Processing engine which is Apache Cocoon and Apache Tomcat. Cocoon is my favorite web framework other than APEX of course and I've used them together on many occasions.
Instead of a long drawn out howto I instead created this viewlet to show you the steps of the process.
The files you will need can be found through these links.
Cocoon
Tomcat
fop_post.zip
APEX and Cocoon Viewlet
If you have any questions please feel free to leave some comments but I think the setup and usage is very simple.
Steven Karam has provided a PDF of his Oracle World presentation Putting the Express Back Into Oracle Application Express with AJAX. It's a very well written and easy to understand introduction into using some of the built in AJAX functionality in APEX. Plus I gotta love the shout out I get at the end ;).
Take some time to dig around his blog a bit more as well he has quite a few tips and tricks in there. The generating XML post is very nice and something I've been working with lately.