Struts2-EINGANG Ergebnis: wie funktioniert es? Wie sind die Konvertierung / Validierung Fehler behandelt?

Wichtigste Frage

Den Arbeitsablauf sollte wie folgt sein: wenn ein String eingegeben wird, anderes als eine Zahl, zuerst sollte es passieren eine Ausnahme Abfangjäger, und wenn Sie durch param interceptor, während der Konvertierung zu int-Typ ist, wird es nicht in der Lage, es zu tun mit Integer.parseInt und eine Ausnahme auftreten würde; sollte nicht die Ausnahme (das ist NumberFormatException) geschoben werden, in dem Wert-Stack ? Warum tut Sie es nicht zeigen NumberFormatException und zeigen Sie das Ergebnis, obwohl das Ergebnis nicht gedruckt werden sollen, statt ?

Seite Frage

Immer, wenn ich, fügen Sie ein alphabet in der form geändert, null...? Warum ist das so ?

index.jsp

<%@ taglib uri="/struts-tags" prefix="s"%>
<s:form action="divide">
    <s:textfield name="number1" label="number1"/>
    <s:textfield name="number2" label="number2"/>
    <s:submit value="divide"/>
</s:form>

divide.java

package actions;

public class divide {
    int number1,number2,result;
    public String execute() throws Exception
    {
        result=number1/number2;
        return "success";
    }
    public int getNumber1() {
        return number1;
    }
    public void setNumber1(int number1) {
        this.number1 = number1;
    }
    public int getNumber2() {
        return number2;
    }
    public void setNumber2(int number2) {
        this.number2 = number2;
    }
    public int getResult() {
        return result;
    }


}

Ergebnis.jsp

<%@taglib uri="/struts-tags" prefix="s" %>
<b>
    the result of division is
    <s:property value="result"/>
</b>
<jsp:include page="index.jsp"></jsp:include>

handler jsp

<%@taglib uri="/struts-tags" prefix="s"%>
<b>
    following exception occured during the processing
    <s:property value="exception"/>
</b>
<jsp:include page="index.jsp"/>

struts.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
    <struts>
        <package name="yo" extends="struts-default">
            <action name="divide" class="actions.divide">
                <exception-mapping result="error" exception="Exception"/>
                <result name="success">/result.jsp</result>
                <result name="error">/handler.jsp</result>
            </action>
        </package>
    </struts>
  • was das bedeutet : Wann immer ich eine alphabet in
  • bedeutet, zu sagen,in das input Feld Schreibe ich einen b oder c,statt einer Nummer,es sollte eine exception werfen,aber Sie behandeln Sie es als null an
  • Definieren von input Ergebnis, denn du hast einen Fehler bei der überprüfung.
InformationsquelleAutor user3239652 | 2014-05-03
Schreibe einen Kommentar