Hello All, I am very new to portlet development. I have no experience with servlet development either. I am trying to show a graph in a portlet. I am using JFreeChart library for charting.
My portlet container is JetSpeed2 (2.2.1). As a test case, first I tested my code with a line of text. It worked. Then I tried to move on to graphics, but my graphics never showed up in the portlet. I decided to test if my portlet could show a static image stored on the disk. I did not have any luck even with that. I have followed methodology/code provided at http://blogs.sun.com/satya/entry/new_feature_resource_serving_in Can someone please point out the problem here? If you need more information, please let me know. I really appreciate your help. Thanks. Prajesh Following is my portlet code. Please note that I have tested the line ChartUtilities.writeChartAsJPEG(image_out, quality, demo.chart, 400,300); inside a stand-alone app in which image_out was a FileOutputStream. ******************************************************** import java.io.IOException; import java.io.OutputStream; import javax.portlet.GenericPortlet; import javax.portlet.PortletException; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import javax.portlet.ResourceRequest; import javax.portlet.ResourceResponse; import javax.portlet.ResourceURL; import java.io.PrintWriter; import org.jfree.chart.ChartUtilities; // import org.jfree.ui.RefineryUtilities; // import org.jfree.util.Log; // import org.jfree.util.PrintStreamLogTarget; public class ScatterPlot extends GenericPortlet { public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException { // Log.getInstance().addTarget(new PrintStreamLogTarget()); response.setContentType("text/html"); PrintWriter writer = response.getWriter(); ResourceURL resURL = response.createResourceURL(); resURL.setResourceID("image"); writer.println(" \"" "); } public void serveResource(ResourceRequest resRequest, ResourceResponse resResp) throws PortletException, IOException { resResp.setContentType("image/jpeg"); OutputStream image_out = resResp.getPortletOutputStream(); TimeSeriesDemo demo = new TimeSeriesDemo("Time Series"); float quality = (float)(0.75); ChartUtilities.writeChartAsJPEG(image_out, quality, demo.chart, 400,300); image_out.flush(); image_out.close(); } } // end of class ********************************************************************** Following is my portlet.xml. ********************************************************************* <?xml version="1.0" encoding="UTF-8"?> <portlet-app id="ScatterPlot" version="1.0"> <portlet id="ScatterPlot_ID"> <description>Plot as many variables on the Y axis against the ONLY variable on the X axis</description> <portlet-name>ScatterPlot_Name</portlet-name> <display-name>Scatter Plot</display-name> <portlet-class>ScatterPlot</portlet-class> <expiration-cache>-1</expiration-cache> <supports> <mime-type>*/*</mime-type> <portlet-mode>VIEW</portlet-mode> <portlet-mode>HELP</portlet-mode> <portlet-mode>EDIT</portlet-mode> <!-- support custom about mode --> <portlet-mode>about</portlet-mode> <!-- support custom edit_defaults mode --> <portlet-mode>edit_defaults</portlet-mode> <!-- support custom preview mode --> <portlet-mode>preview</portlet-mode> <!-- support custom print mode --> <portlet-mode>print</portlet-mode> </supports> <supported-locale>en</supported-locale> <portlet-info> <title>Scatter Plot</title> </portlet-info> </portlet> </portlet-app> ********************************************************************* Following is my web.xml. ********************************************************************* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>ScatterPlot</display-name> <description>Scatter Plot Portlet</description> </web-app> *********************************************************************** -- View this message in context: http://old.nabble.com/Trouble-showing-graph-in-portlet-tp29524013p29524013.html Sent from the Jetspeed - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
