Reputation:
I am about to start a totally new web project.
The project need to have different small window, which contain html generated from other web site.
One important requirement is when user submit a form in the window, NO refresh should be invoked on the other window.
My leader say let's look into jsr286 portlet (coz portlet sounds like window?). But after look into some example (pluto portal/jetspeed2), none of them support the requirement, whenever a window is submit, whole page is submitted.
My rough idea is to use iframe in each window, and let the iframe does the rest (like ref to external website, handle form submission).
Personally, I don't think iframe fit quite well into the portlet jsr286. And most of the window has nothing to do with each other, so processEvent is not compulsory.
So my questions is:
for a new project with such requirement (separate form submission), does it worth it to confirm to portlet jsr286?
If it does, how does the iframe works with different portlet modes(VIEW/EDIT/HELP) or window state(MAX/NORMAL/MIN)?
Thank you very much!
Upvotes: 3
Views: 152
Reputation: 46882
there's a good explanation here that you can point your team leader to. it says:
Mashups and portals are both content aggregation technologies. Portals are an older technology designed as an extension to traditional dynamic Web applications, in which the process of converting data content into marked-up Web pages is split into two phases: generation of markup "fragments" and aggregation of the fragments into pages. Each markup fragment is generated by a "portlet", and the portal combines them into a single Web page. Portlets may be hosted locally on the portal server or remotely on a separate server.
and, critically:
Portal technology is about server-side, presentation-tier aggregation.
so aggregation is done on the portal server (even when the portlet servers are separate - this is all driven by the need to make the server side scalable on big sites; it's not about clients combining from multiple sources). and that's why submission refreshes the whole page (because it has to load the new page from the portal).
which should help clear things up, since it sounds like what you are looking for is client-side aggregation (i don't think i'm telling you anything new here, but i'm giving you references in "enterprise speak" that might sound more convincing).
(so, just in case it's not clear, your requirements sound like you need a client-side mashup. portlets won't work because they are assembled server-side. iframes would work, but have some limitations (size, rescale, style / dynamic changes). i was going to suggest combining things on the client using javascript with backbone, but i am worried you'll have issues with pulling data from different sites because of the restrictions on what javascript from within a web page can access. looks like this article would be worth reading...)
Upvotes: 2