Exception handling struts2+;jfreechart:html IMG标记内的异常处理
我使用下一个代码生成图表:Exception handling struts2+;jfreechart:html IMG标记内的异常处理,exception-handling,struts2,struts2-jfreechart-plugin,Exception Handling,Struts2,Struts2 Jfreechart Plugin,我使用下一个代码生成图表: source: <s:url var="chart" action="resultChart"> <s:param name = "paramBean" value="#request.paramBean"/> </s:url> <img src="<s:property value="%{chart}"/>"/> struts.xml <package name="struts2-ti
source:
<s:url var="chart" action="resultChart">
<s:param name = "paramBean" value="#request.paramBean"/>
</s:url>
<img src="<s:property value="%{chart}"/>"/>
struts.xml
<package name="struts2-tiles-exception" extends="struts-default" namespace="/">
<result-types>
<result-type name="tiles"
class="org.apache.struts2.views.tiles.TilesResult" />
</result-types>
<global-results>
<result name="error" type="tiles">/error.tiles</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception" result="error" />
</global-exception-mappings>
</package>
<package name="chart" extends="jfreechart-default, struts2-tiles-exception" namespace="/">
<action name="resultChart" class="com.ChartAction">
<result name="success" type="chart">
<param name="width"> 1200 </param>
<param name="height"> 600 </param>
</result>
</action>
</package>
java code
The execute() method of ChartAction has next signature :
public String execute() throws Exception {
...
}
来源:
"/>
struts.xml
/错误。瓦片
1200
600
java代码
ChartAction的execute()方法具有下一个签名:
公共字符串execute()引发异常{
...
}
我在tiles应用程序中看到的是空图像,而不是重定向到错误页面,
但是如果我在浏览器命令行中运行resultChart?…我会看到成功重定向到错误页面
如果我在“img”的“src”内执行操作,如何处理重定向到错误页面的异常
你诚挚的,Evgenii我不明白这个问题。发生了什么事?什么是空图像?为什么要看到重定向到错误页面…你真的希望最终结果是错误页面?还是要查看图表?绘制图表-“图表”“操作从数据库检索数据,如果与数据库的连接丢失,我想重定向到“错误”页面。我如何才能做到这一点?出现问题的原因是IMG标记内的操作以及操作不完全在图像标记内。操作的url位于图像标记中。如果您访问该链接时,url在浏览器中生成图像(在正常情况下,假设没有错误),则您应该在该页面上看到该图像。图表返回一个流,因此无法重定向您。为此,您需要使用javascript。一种方法,出错时返回1像素图像。使用画布,您可以确定此图像不符合图像的最小尺寸要求,并使其将您重定向到正确的页面。另一种更简单的方法是让图表操作返回您创建的包含文本“图表当前无法访问”的图像。数据库可能无法访问,但可能由于另一个原因出现异常,至少报告的其余部分可用。