Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
爱吃血肠
spring-framework
提交
c77dbbb1
S
spring-framework
项目概览
爱吃血肠
/
spring-framework
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
spring-framework
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
c77dbbb1
编写于
7月 18, 2018
作者:
J
Juergen Hoeller
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Specific exception for missing request header, cookie, matrix variable
Issue: SPR-14818
上级
e8034f2f
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
219 addition
and
8 deletion
+219
-8
spring-web/src/main/java/org/springframework/web/bind/MissingMatrixVariableException.java
...ingframework/web/bind/MissingMatrixVariableException.java
+70
-0
spring-web/src/main/java/org/springframework/web/bind/MissingPathVariableException.java
...pringframework/web/bind/MissingPathVariableException.java
+3
-2
spring-web/src/main/java/org/springframework/web/bind/MissingRequestCookieException.java
...ringframework/web/bind/MissingRequestCookieException.java
+70
-0
spring-web/src/main/java/org/springframework/web/bind/MissingRequestHeaderException.java
...ringframework/web/bind/MissingRequestHeaderException.java
+70
-0
spring-web/src/main/java/org/springframework/web/method/annotation/AbstractCookieValueMethodArgumentResolver.java
...annotation/AbstractCookieValueMethodArgumentResolver.java
+2
-2
spring-web/src/main/java/org/springframework/web/method/annotation/RequestHeaderMethodArgumentResolver.java
...ethod/annotation/RequestHeaderMethodArgumentResolver.java
+2
-2
spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/MatrixVariableMethodArgumentResolver.java
...thod/annotation/MatrixVariableMethodArgumentResolver.java
+2
-2
未找到文件。
spring-web/src/main/java/org/springframework/web/bind/MissingMatrixVariableException.java
0 → 100644
浏览文件 @
c77dbbb1
/*
* Copyright 2002-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.springframework.web.bind
;
import
org.springframework.core.MethodParameter
;
/**
* {@link ServletRequestBindingException} subclass that indicates that a matrix
* variable expected in the method parameters of an {@code @RequestMapping}
* method is not present among the matrix variables extracted from the URL.
*
* @author Juergen Hoeller
* @since 5.1
* @see MissingPathVariableException
*/
@SuppressWarnings
(
"serial"
)
public
class
MissingMatrixVariableException
extends
ServletRequestBindingException
{
private
final
String
variableName
;
private
final
MethodParameter
parameter
;
/**
* Constructor for MissingMatrixVariableException.
* @param variableName the name of the missing matrix variable
* @param parameter the method parameter
*/
public
MissingMatrixVariableException
(
String
variableName
,
MethodParameter
parameter
)
{
super
(
""
);
this
.
variableName
=
variableName
;
this
.
parameter
=
parameter
;
}
@Override
public
String
getMessage
()
{
return
"Missing matrix variable '"
+
this
.
variableName
+
"' for method parameter of type "
+
this
.
parameter
.
getNestedParameterType
().
getSimpleName
();
}
/**
* Return the expected name of the matrix variable.
*/
public
final
String
getVariableName
()
{
return
this
.
variableName
;
}
/**
* Return the method parameter bound to the matrix variable.
*/
public
final
MethodParameter
getParameter
()
{
return
this
.
parameter
;
}
}
spring-web/src/main/java/org/springframework/web/bind/MissingPathVariableException.java
浏览文件 @
c77dbbb1
/*
* Copyright 2002-201
5
the original author or authors.
* Copyright 2002-201
8
the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -27,6 +27,7 @@ import org.springframework.core.MethodParameter;
*
* @author Rossen Stoyanchev
* @since 4.2
* @see MissingMatrixVariableException
*/
@SuppressWarnings
(
"serial"
)
public
class
MissingPathVariableException
extends
ServletRequestBindingException
{
...
...
@@ -51,7 +52,7 @@ public class MissingPathVariableException extends ServletRequestBindingException
@Override
public
String
getMessage
()
{
return
"Missing URI template variable '"
+
this
.
variableName
+
"' for method parameter of type "
+
this
.
parameter
.
getParameterType
().
getSimpleName
();
"' for method parameter of type "
+
this
.
parameter
.
get
Nested
ParameterType
().
getSimpleName
();
}
/**
...
...
spring-web/src/main/java/org/springframework/web/bind/MissingRequestCookieException.java
0 → 100644
浏览文件 @
c77dbbb1
/*
* Copyright 2002-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.springframework.web.bind
;
import
org.springframework.core.MethodParameter
;
/**
* {@link ServletRequestBindingException} subclass that indicates
* that a request cookie expected in the method parameters of an
* {@code @RequestMapping} method is not present.
*
* @author Juergen Hoeller
* @since 5.1
* @see MissingRequestHeaderException
*/
@SuppressWarnings
(
"serial"
)
public
class
MissingRequestCookieException
extends
ServletRequestBindingException
{
private
final
String
cookieName
;
private
final
MethodParameter
parameter
;
/**
* Constructor for MissingRequestCookieException.
* @param cookieName the name of the missing request cookie
* @param parameter the method parameter
*/
public
MissingRequestCookieException
(
String
cookieName
,
MethodParameter
parameter
)
{
super
(
""
);
this
.
cookieName
=
cookieName
;
this
.
parameter
=
parameter
;
}
@Override
public
String
getMessage
()
{
return
"Missing cookie '"
+
this
.
cookieName
+
"' for method parameter of type "
+
this
.
parameter
.
getNestedParameterType
().
getSimpleName
();
}
/**
* Return the expected name of the request cookie.
*/
public
final
String
getCookieName
()
{
return
this
.
cookieName
;
}
/**
* Return the method parameter bound to the request cookie.
*/
public
final
MethodParameter
getParameter
()
{
return
this
.
parameter
;
}
}
spring-web/src/main/java/org/springframework/web/bind/MissingRequestHeaderException.java
0 → 100644
浏览文件 @
c77dbbb1
/*
* Copyright 2002-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.springframework.web.bind
;
import
org.springframework.core.MethodParameter
;
/**
* {@link ServletRequestBindingException} subclass that indicates
* that a request header expected in the method parameters of an
* {@code @RequestMapping} method is not present.
*
* @author Juergen Hoeller
* @since 5.1
* @see MissingRequestCookieException
*/
@SuppressWarnings
(
"serial"
)
public
class
MissingRequestHeaderException
extends
ServletRequestBindingException
{
private
final
String
headerName
;
private
final
MethodParameter
parameter
;
/**
* Constructor for MissingRequestHeaderException.
* @param headerName the name of the missing request header
* @param parameter the method parameter
*/
public
MissingRequestHeaderException
(
String
headerName
,
MethodParameter
parameter
)
{
super
(
""
);
this
.
headerName
=
headerName
;
this
.
parameter
=
parameter
;
}
@Override
public
String
getMessage
()
{
return
"Missing request header '"
+
this
.
headerName
+
"' for method parameter of type "
+
this
.
parameter
.
getNestedParameterType
().
getSimpleName
();
}
/**
* Return the expected name of the request header.
*/
public
final
String
getHeaderName
()
{
return
this
.
headerName
;
}
/**
* Return the method parameter bound to the request header.
*/
public
final
MethodParameter
getParameter
()
{
return
this
.
parameter
;
}
}
spring-web/src/main/java/org/springframework/web/method/annotation/AbstractCookieValueMethodArgumentResolver.java
浏览文件 @
c77dbbb1
...
...
@@ -20,6 +20,7 @@ import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import
org.springframework.core.MethodParameter
;
import
org.springframework.lang.Nullable
;
import
org.springframework.util.Assert
;
import
org.springframework.web.bind.MissingRequestCookieException
;
import
org.springframework.web.bind.ServletRequestBindingException
;
import
org.springframework.web.bind.WebDataBinder
;
import
org.springframework.web.bind.annotation.CookieValue
;
...
...
@@ -66,8 +67,7 @@ public abstract class AbstractCookieValueMethodArgumentResolver extends Abstract
@Override
protected
void
handleMissingValue
(
String
name
,
MethodParameter
parameter
)
throws
ServletRequestBindingException
{
throw
new
ServletRequestBindingException
(
"Missing cookie '"
+
name
+
"' for method parameter of type "
+
parameter
.
getNestedParameterType
().
getSimpleName
());
throw
new
MissingRequestCookieException
(
name
,
parameter
);
}
...
...
spring-web/src/main/java/org/springframework/web/method/annotation/RequestHeaderMethodArgumentResolver.java
浏览文件 @
c77dbbb1
...
...
@@ -22,6 +22,7 @@ import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import
org.springframework.core.MethodParameter
;
import
org.springframework.lang.Nullable
;
import
org.springframework.util.Assert
;
import
org.springframework.web.bind.MissingRequestHeaderException
;
import
org.springframework.web.bind.ServletRequestBindingException
;
import
org.springframework.web.bind.WebDataBinder
;
import
org.springframework.web.bind.annotation.RequestHeader
;
...
...
@@ -83,8 +84,7 @@ public class RequestHeaderMethodArgumentResolver extends AbstractNamedValueMetho
@Override
protected
void
handleMissingValue
(
String
name
,
MethodParameter
parameter
)
throws
ServletRequestBindingException
{
throw
new
ServletRequestBindingException
(
"Missing request header '"
+
name
+
"' for method parameter of type "
+
parameter
.
getNestedParameterType
().
getSimpleName
());
throw
new
MissingRequestHeaderException
(
name
,
parameter
);
}
...
...
spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/MatrixVariableMethodArgumentResolver.java
浏览文件 @
c77dbbb1
...
...
@@ -26,6 +26,7 @@ import org.springframework.util.Assert;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.MissingMatrixVariableException
;
import
org.springframework.web.bind.ServletRequestBindingException
;
import
org.springframework.web.bind.annotation.MatrixVariable
;
import
org.springframework.web.bind.annotation.ValueConstants
;
...
...
@@ -122,8 +123,7 @@ public class MatrixVariableMethodArgumentResolver extends AbstractNamedValueMeth
@Override
protected
void
handleMissingValue
(
String
name
,
MethodParameter
parameter
)
throws
ServletRequestBindingException
{
throw
new
ServletRequestBindingException
(
"Missing matrix variable '"
+
name
+
"' for method parameter of type "
+
parameter
.
getNestedParameterType
().
getSimpleName
());
throw
new
MissingMatrixVariableException
(
name
,
parameter
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录