1. 程式人生 > >Action返回錯誤資訊

Action返回錯誤資訊

例項

Action

package com.struts.action;

import org.apache.log4j.Logger;
import com.opensymphony.xwork2.ModelDriven;
import com.struts.model.User;

@SuppressWarnings("serial")
public class Form extends BaseAction implements ModelDriven<User> {
	private User user = new User();
	Logger logger = Logger.getLogger(Form.class);

	@Override
	public String execute() throws Exception {

		if (!user.getName().equals("admin")) {
			logger.info("姓名" + user.getName());
			// this.addFieldError("name", "name錯誤!");
			request.setAttribute("name", "name錯誤");
			return INPUT;
		} else if (!user.getPassword().equals("admin")) {
			// this.addFieldError("password", "password錯誤!");
			request.setAttribute("password", "password錯誤");
			return INPUT;
		}
		return SUCCESS;
	}

	@Override
	public User getModel() {
		return user;
	}

	// public void validate() {
	//
	// if (!user.getName().equals("admin")) {
	// logger.info("姓名" + user.getName());
	// this.addFieldError("name", "name錯誤!");
	// // return INPUT;
	// } else if (!user.getPassword().equals("admin")) {
	// this.addFieldError("password", "password錯誤!");
	// // return INPUT;
	// }
	// }
}
JSP.
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'add_student.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>

<body>
	<form action="./student/form.do">
		姓名:<input type="text" name="name">${name }<br> 密碼:<input
			type="password" name="password">${password }<br>
		<!-- <s:fielderror>
			<s:param>name</s:param>
			<s:param>password</s:param>
		</s:fielderror> -->
		<br> <input type="submit" value="提交">
	</form>
</body>
</html>

普通類獲取HttpservletRequest

首先繼承ActionSupport

定義 HttpservletRequest

通過ServletActionContext.getrequest獲取request

可用於Action設定request.setAtrrbut返回錯誤資訊資訊

package com.struts.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class BaseAction extends ActionSupport {
	HttpServletRequest request;
	HttpSession session;

	public BaseAction() {
		request = ServletActionContext.getRequest();
		session = request.getSession();
	}

}


相關推薦

Action返回錯誤資訊

例項 Actionpackage com.struts.action; import org.apache.log4j.Logger; import com.opensymphony.xwork2.

Laravel 通過Url確定返回錯誤資訊格式 阿星小棧

路徑:專案/app/Exceptions/Handler.php public function render($request, Exception $exception) { if(!empty($exception)){ $url = URL

aop實現vaild引數驗證返回錯誤資訊

  public class UserInfo { @NotNull(message = "年齡不能為空",groups = Add.class) private String name; @Max(value = 100,message = "不能超過100"

Spring boot + Spring Security + Thymeleaf 認證失敗返回錯誤資訊

Spring boot +Spring Security + Thymeleaf 認證失敗返回錯誤資訊 Spring boot以其眾多友誼的特性,如零配置、微服務等,吸引了很多的粉絲。而其與Spring Security安全框架的無縫結合,使其具備的安全的特性。在此基礎上

discuz郵件傳送返回錯誤資訊

discuz論壇郵箱設定 在網上找了很多方法,比如:fsockopen不支援、openssl.so沒有、php.ini更改等等等等,都嘗試過了,全部沒用,弄了三天,心快崩潰了,最後換新浪郵箱......居然TM好使了ORZ,心塞,QQ、163都不行,新浪居然可以。 原理不

Spring中丟擲異常時,既要要返回錯誤資訊,還要做事務回滾

情況一:如果沒有在程式中手動捕獲異常,如下程式碼事務會回滾 Java程式碼   @Transactional(rollbackFor = { Exception.class })     public void test() throws Exception { 

返回錯誤資訊和拋異常的優劣比較

以一個介面為例: 使用者註冊介面:      驗證使用者資訊,如果引數為空或者不合法,1、返回錯誤資訊;2、丟擲異常      哪一種處理方式比較好呢? 返回對應的錯誤資訊比拋異常要友好一些,

關於微信企業付款(提現)返回錯誤資訊的除錯

一、證書出錯         一般是因為證書路徑問題。內有寫對; 二、簽名錯誤         1、在各個引數都正確的情況下              使用微信的簽名檢查工具 http://mch.weixin.qq.com/wiki/tools/signverify/,

驗證表單返回錯誤資訊

一:利用requst返回錯誤提示 在Action類中操作requst物件(另附文介紹),然後按Servlet方式處理。具體程式碼如下: struts.xml <package name="u

Laravel 通過Url確定返回錯誤資訊格式 阿星小棧

public function render($request, Exception $exception) { if(!empty($exception)){ $url = URL::current(); $urlData =

springboot錯誤資訊返回與自定義異常處理

在很多系統中,我們可能在執行時出現各種異常,有系統異常,程式碼異常,自定義的異常。這時候我們就要把這些錯誤異常資訊返回去給客戶端檢視才知道是哪裡出問題。這裡我們就說說spring boot的異常處理。   springboot錯誤資訊返回: 實際上,如果我們訪問一個url,不同

VS2017 無法啟動 IIS EXPRESS Web 伺服器。 工作程序未能正確初始化,因而無法啟動。返回的資料為錯誤資訊。已解決!!!

在應用程式中看到兩個報錯 1.在要求開始處理 http 請求時,應用程式池“Clr4IntegratedAppPool”的工作程序(PID=“488”)未能初始化 http.sys 通訊,因此 W3SVC 將其視為錯誤並終止。資料欄位包含錯誤號。 2.工作程序未能正確初始

laravel ajax驗證支援,返回json錯誤資訊

改造request驗證類,新增failedValidation方法: <?php namespace App\Http\Requests\Index; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Valida

laravel 中 api介面 使用 FormRequest 驗證時,返回json格式的 validate錯誤資訊

laravel 中使用 FormRequest類來做資料驗證時,預設是把validator的錯誤資訊寫入session中返回到前端頁面的 $errors中, 前端頁面 顯示如下 @if(count($errors->all())>0) <div

laravel dingo API返回自定義錯誤資訊

 laravel 在使用了 dingo API 後,錯誤資訊被dingo異常類接管了,返回資訊變成了 :       要返回自定義的錯誤資訊,就需要再把錯誤異常類接管回來(大概這個意思...) 方法: 在  app\Providers\AppServiceProvide

http 請求(tomcat) 返回 錯誤頁面資訊

http 請求,返回錯誤資訊的html 頁面: try{ while (true) { while (reader.ready()) { String buf

c++學習之:根據GetLastError()返回值獲取錯誤資訊

注:本文屬於轉載,詳細出處忘記了,如果找到了會加上出處。 VC中GetLastError()獲取錯誤資訊的使用在VC中編寫應用程式時,經常需要涉及到錯誤處理問題。許多函式呼叫只用TRUE和FALSE來表明函式的執行結果。一旦出現錯誤,MSDN中往往會指出請用GetLas

struts標籤返回登陸錯誤資訊

1 接收action中返回的錯誤 LoginAcrion.java if(!user.getUserPassword().equals(UserPassword)){   ActionMessages errors=new ActionMessages();   errors

python字典中沒有輸入的鍵key 返回一定的錯誤資訊或者提示狀態

推薦使用 'key' in dict  返回布林值的方法 python3之後直接去除了下面的has_key()方法,但是如果你的程式需要相容2.2或之前的版本程式就只能使用較早的方法了。 Python 字典(Dictionary) has_key()方法 描述Pyth

WebApi資料驗證——ModelState驗證返回所有錯誤資訊,並統一返回公共結果類,

一. 公共返回類(根據專案需要來定義,與正常請求資料返回結果類一致) 注:泛型的返回類請自己擴充,本文只為示例,只列舉一個非泛