Author: thomas.heute(a)jboss.com
Date: 2009-01-19 10:30:28 -0500 (Mon, 19 Jan 2009)
New Revision: 12555
Modified:
modules/portlet/tags/JBP_PORTLET_2_0_5/samples/src/main/java/org/jboss/portal/portlet/samples/remotecontroller/RemoteControllerPortlet.java
Log:
minor
Modified:
modules/portlet/tags/JBP_PORTLET_2_0_5/samples/src/main/java/org/jboss/portal/portlet/samples/remotecontroller/RemoteControllerPortlet.java
===================================================================
---
modules/portlet/tags/JBP_PORTLET_2_0_5/samples/src/main/java/org/jboss/portal/portlet/samples/remotecontroller/RemoteControllerPortlet.java 2009-01-19
15:13:12 UTC (rev 12554)
+++
modules/portlet/tags/JBP_PORTLET_2_0_5/samples/src/main/java/org/jboss/portal/portlet/samples/remotecontroller/RemoteControllerPortlet.java 2009-01-19
15:30:28 UTC (rev 12555)
@@ -4,9 +4,15 @@
package org.jboss.portal.portlet.samples.remotecontroller;
-import org.w3c.dom.Element;
-
-import javax.portlet.*;
+import javax.portlet.GenericPortlet;
+import javax.portlet.PortletException;
+import javax.portlet.PortletURL;
+import javax.portlet.RenderRequest;
+import javax.portlet.RenderResponse;
+import javax.portlet.ResourceRequest;
+import javax.portlet.ResourceResponse;
+import javax.portlet.ResourceURL;
+import javax.portlet.WindowState;
import java.io.IOException;
import java.io.PrintWriter;
@@ -14,87 +20,63 @@
* @author <a href="mailto:chris.laprun@jboss.com">Chris
Laprun</a>
* @version $Revision: 9979 $
*/
-public class RemoteControllerPortlet extends GenericPortlet {
+public class RemoteControllerPortlet extends GenericPortlet
+{
private static final String ZIPCODE = "zipcode";
- String resUrl = "";
@Override
- protected void doView(RenderRequest renderRequest, RenderResponse renderResponse)
throws PortletException, IOException {
+ protected void doView(RenderRequest renderRequest, RenderResponse renderResponse)
throws PortletException, IOException
+ {
renderResponse.setContentType("text/html");
- ResourceURL resource = renderResponse.createResourceURL();
- resUrl = resource.toString();
PrintWriter printWriter = renderResponse.getWriter();
String namespace = renderResponse.getNamespace();
- printWriter.print("<p><a href='#' onclick=\"" +
namespace + "_remote=" + namespace + "_openRemote_new('");
-
+ printWriter.print("<p><a href='#' onclick=\"" +
namespace + "_remote=" + namespace + "_openRemote('");
+ ResourceURL resource = renderResponse.createResourceURL();
printWriter.print(resource);
printWriter.print("')\">Open remote
control!</a></p>");
}
@Override
- protected void doHeaders(RenderRequest renderRequest, RenderResponse renderResponse)
{
- Element element = renderResponse.createElement("script");
- element.setAttribute("type", "text/javascript");
- String namespace = renderResponse.getNamespace();
- String remoteWindowName = namespace + "_remote";
-
- element.setTextContent("" +
- "var " + remoteWindowName + " = ''; " +
-
- "function " + namespace + "_openRemote_new(url){" +
-
- //"this.window.name='" + namespace +
"_parent';\n" +
- "if (!"+ remoteWindowName +".closed){"+
- "if (" + remoteWindowName +".location) {\n" +
- remoteWindowName +".location.reload(true);\n" +
-// "try{" + fix recursion/do something different
-// "addLoadEvent(" + namespace +
"_openRemote_new('" + resUrl +"'));" +
-// "}catch(e){}" +
-
- "}\n" +
- "else {\n" +
- remoteWindowName +"=window.open(url, '" +
remoteWindowName + "', 'width=400,height=200,scrollable=yes');\n" +
-
- "if (!"+ remoteWindowName +".opener){ "+
remoteWindowName +".opener = self;\n}" +
- "}\n" +
- "if (window.focus) {"+ remoteWindowName +".focus()}\n"
+
- "return false;" +
- "}}" +
- "" +
-
- "function addLoadEvent(func) {\n" +
- "var oldonload = window.onload;\n" +
- "if (typeof window.onload != 'function') {\n" +
- "window.onload = func;\n" +
- "}\n" +
- "else {\n" +
- "window.onload = function() {\n" +
- "oldonload();\n" +
- "func();\n" +
- "}\n" +
- "}\n" +
- "}");
- renderResponse.addProperty(MimeResponse.MARKUP_HEAD_ELEMENT, element);
+ protected void doHeaders(RenderRequest renderRequest, RenderResponse renderResponse)
+ {
+ PrintWriter printWriter = null;
+ try
+ {
+ printWriter = renderResponse.getWriter();
+ String namespace = renderResponse.getNamespace();
+ String remoteWindowName = namespace + "_remote";
+ printWriter.print("<script type='text/javascript'>var "
+ remoteWindowName + "; function " + namespace
+ + "_openRemote(url){window.name='" + namespace +
"_parent';window.open(url, '" + remoteWindowName
+ + "', 'width=400,height=200,scrollable=yes')}" +
+ "onload = function() {" +
+ "if (typeof " + remoteWindowName + " != 'undefined')
{" + remoteWindowName + ".location.reload(true);}" +
+ "}</script>");
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace(); //To change body of catch statement use File | Settings |
File Templates.
+ }
}
@Override
- public void serveResource(ResourceRequest resourceRequest, ResourceResponse
resourceResponse) throws PortletException, IOException {
+ public void serveResource(ResourceRequest resourceRequest, ResourceResponse
resourceResponse) throws PortletException, IOException
+ {
resourceResponse.setContentType("text/html");
PrintWriter writer = resourceResponse.getWriter();
String namespace = resourceResponse.getNamespace();
writer.print("<html><head><script
type='text/javascript'>function
openLinkInParent(url){window.open(url,'"
- + namespace + "_parent');}</script>\n<link
rel=\"stylesheet\" href='" + resourceRequest.getContextPath() +
"/css/master.css'
type=\"text/css\"/></head><body>");
+ + namespace + "_parent');}</script>\n<link
rel=\"stylesheet\" href='" + resourceRequest.getContextPath() +
"/css/master.css'
type=\"text/css\"/></head><body>");
PortletURL url = resourceResponse.createRenderURL();
url.setWindowState(WindowState.MINIMIZED);
writer.print("<div
class=\"remote-container\"><ul><li><a href='#'
onclick=\"" + createParentURL(url) + "\"><img\n" +
- " src=\"" +
resourceRequest.getContextPath() + "/images/icon-minimize.gif\"
alt=\"\"/> minimize parent portlet</a></li>");
+ " src=\"" +
resourceRequest.getContextPath() + "/images/icon-minimize.gif\"
alt=\"\"/> minimize parent portlet</a></li>");
url.setWindowState(WindowState.MAXIMIZED);
writer.print("<li><a href='#' onclick=\"" +
createParentURL(url) + "\"><img\n" +
- " src=\"" +
resourceRequest.getContextPath() + "/images/icon-maximize.gif\"
alt=\"\"/> maximize parent portlet</a></li>");
+ " src=\"" +
resourceRequest.getContextPath() + "/images/icon-maximize.gif\"
alt=\"\"/> maximize parent portlet</a></li>");
url.setWindowState(WindowState.NORMAL);
writer.print("<li><a href='#' onclick=\"" +
createParentURL(url) + "\"><img\n" +
- " src=\"" +
resourceRequest.getContextPath() + "/images/icon-normal.gif\"
alt=\"\"/> make parent portlet
normal</a></li></ul>");
-
writer.print("<br/><ul><li><b>'zipcode'</b>
public render parameter value: " + resourceRequest.getParameter(ZIPCODE) +
"<br/>");
+ " src=\"" +
resourceRequest.getContextPath() + "/images/icon-normal.gif\"
alt=\"\"/> make parent portlet
normal</a></li></ul>");
+ writer.print("<br/><ul><li>");
writer.print("Set value of <b>'zipcode'</b> public render
parameter to:</li>");
url.setParameter(ZIPCODE, "80201");
writer.print("<li><a href='#' onclick=\"" +
createParentURL(url) + "\">Denver, CO</a>");
@@ -105,7 +87,8 @@
writer.print("</ul></div></body></html>");
}
- private String createParentURL(PortletURL url) {
+ private String createParentURL(PortletURL url)
+ {
return "openLinkInParent('" + url + "')";
}
}
Show replies by date