Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
爱吃血肠
spring-framework
提交
27f58db3
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 搜索 >>
提交
27f58db3
编写于
9月 30, 2014
作者:
R
Rossen Stoyanchev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Polish ViewResolversBeanDefinitionParser
上级
d293889b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
11 deletion
+11
-11
spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewResolversBeanDefinitionParser.java
...web/servlet/config/ViewResolversBeanDefinitionParser.java
+11
-11
未找到文件。
spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewResolversBeanDefinitionParser.java
浏览文件 @
27f58db3
...
...
@@ -70,10 +70,6 @@ public class ViewResolversBeanDefinitionParser implements BeanDefinitionParser {
Object
source
=
context
.
extractSource
(
element
);
context
.
pushContainingComponent
(
new
CompositeComponentDefinition
(
element
.
getTagName
(),
source
));
RootBeanDefinition
compositeResolverBeanDef
=
new
RootBeanDefinition
(
ViewResolverComposite
.
class
);
compositeResolverBeanDef
.
setSource
(
source
);
compositeResolverBeanDef
.
setRole
(
BeanDefinition
.
ROLE_INFRASTRUCTURE
);
ManagedList
<
Object
>
resolvers
=
new
ManagedList
<
Object
>(
4
);
resolvers
.
setSource
(
context
.
extractSource
(
element
));
String
[]
names
=
new
String
[]
{
"jsp"
,
"tiles"
,
"bean-name"
,
"freemarker"
,
"velocity"
,
"groovy"
,
"bean"
,
"ref"
};
...
...
@@ -122,13 +118,19 @@ public class ViewResolversBeanDefinitionParser implements BeanDefinitionParser {
resolvers
.
add
(
resolverBeanDef
);
}
List
<
Element
>
elementList
=
DomUtils
.
getChildElementsByTagName
(
element
,
new
String
[]
{
"content-negotiation"
});
if
(
elementList
.
isEmpty
())
{
String
beanName
=
VIEW_RESOLVER_BEAN_NAME
;
RootBeanDefinition
compositeResolverBeanDef
=
new
RootBeanDefinition
(
ViewResolverComposite
.
class
);
compositeResolverBeanDef
.
setSource
(
source
);
compositeResolverBeanDef
.
setRole
(
BeanDefinition
.
ROLE_INFRASTRUCTURE
);
names
=
new
String
[]
{
"content-negotiation"
};
List
<
Element
>
contentnNegotiationElements
=
DomUtils
.
getChildElementsByTagName
(
element
,
names
);
if
(
contentnNegotiationElements
.
isEmpty
())
{
compositeResolverBeanDef
.
getPropertyValues
().
add
(
"order"
,
0
);
compositeResolverBeanDef
.
getPropertyValues
().
add
(
"viewResolvers"
,
resolvers
);
}
else
if
(
elementList
.
size
()
==
1
)
{
BeanDefinition
beanDef
=
createContentNegotiatingViewResolver
(
elementList
.
get
(
0
),
context
);
else
if
(
contentnNegotiationElements
.
size
()
==
1
)
{
BeanDefinition
beanDef
=
createContentNegotiatingViewResolver
(
contentnNegotiationElements
.
get
(
0
),
context
);
beanDef
.
getPropertyValues
().
add
(
"viewResolvers"
,
resolvers
);
ManagedList
<
Object
>
list
=
new
ManagedList
<
Object
>(
1
);
list
.
add
(
beanDef
);
...
...
@@ -136,14 +138,12 @@ public class ViewResolversBeanDefinitionParser implements BeanDefinitionParser {
compositeResolverBeanDef
.
getPropertyValues
().
add
(
"order"
,
Ordered
.
HIGHEST_PRECEDENCE
);
compositeResolverBeanDef
.
getPropertyValues
().
add
(
"viewResolvers"
,
list
);
}
else
if
(
elementList
.
size
()
>
1
)
{
else
if
(
contentnNegotiationElements
.
size
()
>
1
)
{
throw
new
IllegalArgumentException
(
"Only one <content-negotiation> element is allowed."
);
}
String
beanName
=
VIEW_RESOLVER_BEAN_NAME
;
context
.
getReaderContext
().
getRegistry
().
registerBeanDefinition
(
beanName
,
compositeResolverBeanDef
);
context
.
registerComponent
(
new
BeanComponentDefinition
(
compositeResolverBeanDef
,
beanName
));
context
.
popAndRegisterContainingComponent
();
return
null
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录