亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

struts 不執行對應方法,請求無法到后臺?

struts 不執行對應方法,請求無法到后臺?

124839 2017-03-07 16:33:48
用的是ssh主要是其中的save方法,其他方法可以正確執行。正常情況下點擊提交,Action類的方法應該能被執行才對,我在save方法中向控制臺打印了一句話,然而控制臺并沒有打印這句話,不清楚哪里錯了?下面是struts配置文件<?xml?version="1.0"?encoding="UTF-8"?>?? <!DOCTYPE?struts?PUBLIC?? ????????????"-//Apache?Software?Foundation//DTD?Struts?Configuration?2.5//EN"?? ????"http://struts.apache.org/dtds/struts-2.5.dtd">?? <struts>?? ???? ????<!--?開發模式下使用,可以打印出更詳細的錯誤信息?-->?? ????<constant?name="struts.devMode"?value="true"></constant>?? ?? ????<!--?是否開啟動態方法調用?-->?? ????<constant?name="struts.enable.DynamicMethodInvocation"?value="false"?/>?? ???? ????<package?name="default"?namespace="/"?extends="struts-default"> ???? ???????? ????????<!--?定義新的攔截器棧,配置prepare攔截器棧的alwaysInvokePrepare?參數值為false?--> ????????<interceptors> ????????????<interceptor-stack?name="sshStack"?> ????????????????<interceptor-ref?name="paramsPrepareParamsStack"> ????????????????????<param?name="prepare.alwaysInvokePrepare">false</param> ????????????????</interceptor-ref> ????????????</interceptor-stack>????????????? ????????</interceptors> ???????? ????????<!--?定使用新的攔截器棧?--> ????????<default-interceptor-ref?name="sshStack"></default-interceptor-ref> ???????? ????????<global-allowed-methods>remove</global-allowed-methods> ???????? ????????<action?name="emp-*"?class="employeeAction"?method="{1}"> ????????????<result?name="list">/WEB-INF/views/emp-list.jsp</result> ????????????<result?type="stream"?name="remove"> ????????????????<param?name="contentType">text/html</param> ????????????????<param?name="inputName">inputStream</param> ????????????</result> ????????????<result?name="input">/WEB-INF/views/emp-input.jsp</result> ????????????<result?name="save"?type="redirect">/emp-list</result> ???????????? ????????</action> ???????? ????</package> ????? </struts>emp-input.jsp頁面<%@?page?language="java"?contentType="text/html;?charset=UTF-8" ????pageEncoding="UTF-8"%> <%@?taglib?prefix="s"?uri="/struts-tags"?%> <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN"?"http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"> <title>Insert?title?here</title> </head> <body> ????<h4>Employee?Input?Page</h4> ????<s:form?acton="emp-save"?method="post"> ????????<s:textfield?name="lastName"?label="姓名"></s:textfield> ????????<s:textfield?name="email"?label="郵箱"></s:textfield> ????????<s:textfield?name="birth"?label="出生日期"></s:textfield> ???????? ????????<s:select?list="#request.departments"?listkey="id"?listValue="departmentName"?name="department.id"?label="部門"> ????????</s:select> ???????? ????????<s:submit></s:submit> ????</s:form> </body> </html>EmployeeAction類public?class?EmployeeAction?extends?ActionSupport?implements?RequestAware, ModelDriven<Employee>,Preparable{ ????static{ ????????System.out.println("是否進入此類?-------------------------"); ????} ????private?static?final?long?serialVersionUID?=?1L; ???? ????private?EmployeeService?employeeService; ???? ????public?void?setEmployeeService(EmployeeService?employeeService)?{ ????????this.employeeService?=?employeeService; ????} ???? ????private?DepartmentService?departmentService; ???? ????public?void?setDepartmentService(DepartmentService?departmentService)?{ ????????this.departmentService?=?departmentService; ????} ???? ????public?String?input()?{ ???????request.put("departments",?departmentService.getAll()); ???????System.out.println("====================input方法被執行===================");? ???????return?INPUT; ????} ???? ????public?String?list()?{ ????????request.put("employees",?employeeService.getAll()); ????????System.out.println("====================list方法被執行==================="); ????????return?"list"; ????} ???? ????public?String?save(){ ????????System.out.println("====================save方法被執行==================="); ????????model.setCreateTime(new?Date()); ????????employeeService.saveOrUpdate(model); ????????System.out.println(model.toString()); ????????return?"save"; ????} ???? ????/** ?????*?prepareble攔截器需要?? ?????*/ ????public?void?prepareSave()?{ ????????model?=?new?Employee(); ????} ???? ????private?Integer?id; ???? ????public?void?setId(Integer?id)?{ ????????this.id?=?id; ????} ???? ????private?InputStream?inputStream; ?????? ????public?InputStream?getInputStream()?{ ????????return?inputStream; ????} ???? ????public?String?remove()?{ ????????try?{ ????????????employeeService.remove(id); ????????????inputStream?=?new?ByteArrayInputStream("1".getBytes("UTF-8")); ????????}?catch?(Exception?e)?{ ????????????try?{ ????????????????inputStream?=?new?ByteArrayInputStream("0".getBytes("UTF-8")); ????????????}?catch?(UnsupportedEncodingException?e1)?{ ????????????????e1.printStackTrace(); ????????????} ????????????e.printStackTrace(); ????????} ????????return?"remove"; ????} ???? ????private?Map<String?,?Object>?request; ????/*? ?????*?@see?org.apache.struts2.interceptor.RequestAware#setRequest(java.util.Map) ?????*/ ????@Override ????public?void?setRequest(Map<String,?Object>?arg0)?{ ????????this.request?=?arg0; ????} ???? ????private?Employee?model; ???? ????@Override ????public?Employee?getModel()?{ ????????return?model; ????} ????@Override ????public?void?prepare()?throws?Exception?{} ???? ???? }
查看完整描述

2 回答

?
Find_The_Hard

TA貢獻3條經驗 獲得超0個贊

Debug 走一下就知道了 ?哪出錯了


查看完整回答
反對 回復 2017-03-07
  • 124839
    124839
    這,。。debug斷點打在哪里?
?
慕粉4075985

TA貢獻104條經驗 獲得超33個贊

要不試一下寫成兩個action

查看完整回答
反對 回復 2017-03-07
  • 2 回答
  • 0 關注
  • 1778 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號